Discussion:Tri à bulles

message: Partie implémentation :
Dans le coeur de la boucle, il faut remplacer t[i] par t[j-1]. Dans l'état actuel des choses, cela ne fonctionne pas. Qlq peut-il me donner la confirmation ?
Effectivement. Corrigé. Il y a eu apparemment confusion avec le tri par insertion... FvdP (d) 25 mar 2005 à 18:42 (CET)
thread_title:  Erreur 

message: Je trouve que la partie "Implémentations" est vraiment inutile. On va pas s'amuser à coder les exemples dans 10 langages différents.
Le pseudo code est largement suffisant, après ce n'est qu'une histoire de syntaxe ! --Max81 (d) 19 octobre 2008 à 19:45 (CEST)
replies: text: J'approuve à 100%. Ce n'est pas le but de Wikipedia d'implémenter chaque algorithme dans chaque langage possible. À la rigueur, dans Wikibooks... Dans un article comme celui-ci, il devrait y avoir au plus UNE implémentation, soit en pseudo-code, soit dans un langage clairement lisible et de préférence le même pour tous les articles au moins d'un même sujet (ici le tri). FvdP (d) 12 janvier 2010 à 21:28 (CET)
thread_title:  Implémentations 

message: En comparant avec la wiki allemande j'ai l'impression que le pseudo-code est faux, merci de vérifier.
Traduction du code de la wiki allemande, testé avec succès (en C):
 procédure bubbleSort( A : liste des éléments) 
   n := longueur( A )
   faire
     échangé := faux
     pour i de 1 à n - 1 faire 
       si A[ i ] > A[ i + 1 ] alors
         échanger( A[ i ], A[ i + 1 ] )
         échangé := vrai
       fin si
     fin pour
     n := n - 1
   tant que échangé et n > 1
 fin procédure
:À part le fait que n est décrémenté à chaque étape (optimisation qui n'est pas essentielle), ça me semble strictement équivalent, non ? Nordald (d) 16 septembre 2010 à 23:41 (CEST)
thread_title:  pseudo-code faux? 

message: Il est dit dans la partie "Complexité" que lorsque l'ordre initial des éléments du tableau est aléatoire, le nombre d'échanges est en moyenne égal à n(n-1)/4.
Ayant fait des tests de rapidité sur des tableaux avec n = 10000, il s'est avéré que le temps d'exécution de l'algorithme de tri à bulle était plus long que celui du tri par sélection.
Or, le nombre d'échange effectué par le tri par sélection équivaut n(n+1)/2, il devrait donc être plus gourmand en temps d'exécution.
Merci de bien vouloir m'éclairer.
(Le temps d'exécution du tri à bulle était en moyenne deux fois plus long)
:Même parmi les algorithmes de tri quadratique, le tri à bulle est réputé pour être le plus mauvais (je crois que Knuth donne une analyse détaillée dans TAOCP). Donc ces résultats expérimentaux sont normaux. Je pense que vous vous trompez sur l'aspect théorique : le tri par sélection ne fait que n échanges. Il fait un nombre quadratique de comparaisons, mais une implémentation standard reste plus efficace que le tri bulle. Nordald (d) 24 mars 2011 à 17:38 (CET)
thread_title:  Nombre d'échanges moyens pour un tableau rempli aléatoirement 

message: Bonjour, je me suis appuyé sur ce pseudo-code pour faire programmer le tri à mes étudiants et il me semble qu'il y a une erreur dans le pseudo-code : 
i commence par prendre la valeur du dernier indice du tableau : n-1
en fin de deuxième boucle j a donc la valeur n-1
et j+1 est un indice en dehors du tableau
--92.150.245.216 (discuter) 9 octobre 2015 à 17:49 (CEST)
replies: text: Dans ce pseudo-code, on ne lève pas l'exception t[n+1] mais l'idée est là. JackPotte ($♠) 9 octobre 2015 à 22:58 (CEST)
thread_title:  Erreur Pseudo Code Non Optimisé ? 

message: idem pour la version optimisé : pour j allant de 1 à i-1 pas 1 faire, le premier élément du tableau n'est pas trié puisque jamais examiné !
--92.150.245.216 (discuter) 9 octobre 2015 à 19:21 (CEST)
replies: text: Dans ce pseudo-code, le premier élément du tableau est t[1] (pas t[0]), il est donc comparé au début. JackPotte ($♠) 9 octobre 2015 à 22:55 (CEST)
thread_title:  Erreur Pseudo Code Optimisé ?