Menu
Donnez votre avis

Tri à bulles -récursivité-

Posez votre question
Voici une procédure récursive qui permet de trier un tableau de n entiers en utilisant la méthode de tri à bulles :

Procedure Tri_bulles (var t : TAB; n : integer);  
Var i, aux : integer;  
    Function Trier (t : TAB; n : integer) : Boolean;  
    Var ok : boolean; i : integer;  
    Begin  
         ok := true; i := 1;  
         Repeat  
               If t[i + 1] < t[i] Then ok := false  
               Else i := i + 1;  
         Until ((Not ok) or (i >= n));  
         Trier := ok;  
    End;  
    Begin  
         If Not Trier (t, n) Then  
         Begin  
              For i := 1 To n - 1 Do  
                If t[i] > t[i + 1] Then  
                   Begin  
                        aux := t[i];  
                        t[i] := t[i + 1];  
                        t[i + 1] := aux;  
                   End;  
              Tri_bulles (t, n);  
         End;  
    End;


A voir également

Article original publié par Carlos-vialfa. Traduit par ZOUARI.

Ce document intitulé «  Tri à bulles -récursivité-  » issu de CommentCaMarche (https://www.commentcamarche.net/) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Ajouter un commentaire

Commentaires

Commenter la réponse de doudou
Tri par fusion - récursivité-
Tri Shell -Recursive-