Tri

Le tri

Le tri par insertion

Le tri par insertion fait partie d'une de nombreuse méthode de tri qui existe, celle ci permet de trier une liste non triée en partant du deuxiéme élement pour comparé à celle d'avant. Si l'élement est plus petit elle vole la place de l'élément précedent,elle recommence jusqu'à que la liste soit triée. Soit elle prend un élement elle le met de côtée jusqu'a qu'elle soit placée correctement soit à gauche d'un élement plus grande qu'elle.
Mais les image vaut mieux que des mots:

Plus être plus précis voici son algorithme et son programme qui permet de montrer en plus profondeur le processus: Lien
D'abord les valeurs,dans ce cas précis t répresent le tableau,j l'indice de position 2,e t i et k qu'on verra aprés. Elle commence par une première boucle qui tant que la valeur j est plus petit que ou égal à la longeur du tableau attribue à k la valeur de l'indice de position j soit en position 2 et i prend la valeur j-1 soit 1 Ensuite la deuxiéme boucle débute tant que i est plus grand que 0 ce qui es le cas et que la valeur à l'indice i est supérieure à k, on décale la valeur à l'indice i vers la droite ce qui correspond à l'indice i+1. Cela fait de la place pour insérer la valeur k dans la bonne position. Enfin,une fois la boucle 2 terminée, on insère la valeur k à la position i+1 qui correspond à la première à droite de la dernière valeur déplacée dans la boucle précédente et j devient j+1 pour passer à l'indice de postiton d'aprés et on le refait etc... Jusqu'a que la liste soit triés soit j dépasse la longeur du tableau. Le programme(voir piéce jointe) est exactement la même chose excepté que des document.write sont rajoutés pour voir les différentes étapes du tri.



Le tri à bulles

Le tri à bulles est un tri qui se fait pas seul mais à deux,elle compare 2 à 2 les élements jusqu'a que la liste soir triés.
Comparer d'abord les deux premiers éléments de la liste.
Si le premier élément est plus grand que le deuxième,échanger.
Répéter ainsi jusqu'à à obtenir une liste triés.

Voici à nouveau un exemple qui illustre bien ce tri:


Pour ce tri une fonction à étè crée pour que le programme s'execute lorsque on appuie sur un bouton.D'abord on récupere les valeur qui seront dans la liste avec parseINT(prompt()) pour que le programme prenne tout le nombre et non le premier chiffre du nombre puis elle récupere la longeur de la liste(len),ensuite il y a 2 boucles,la première est la principale permet au programme d'avoir une fin. Ensuite la 2éme boucle est pour comparer et échanger 2 élements.Elle vérifie si l'élement actuel est plus grand si c'est le cas on le nomme "temp" puis on échange ces 2 élements et enfin on rajoute un "document.write" pour voir chaque étape. Tri à bulles