Les Snippets

Connexion

UNE IMPLÉMENTATION D'UN TRI DE TABLEAU

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 11/09/2011 21:20:47 et initié par blueperfect [Liste]
Date de mise à jour : 12/09/2011 08:57:31
Vue : 1350
Catégorie(s) : Maths, Algorithme, Divers
Langages dispo pour ce code :
- Delphi 5



Langage : Delphi 5
Date ajout : 11/09/2011
Posté par blueperfect [Liste]
DateMAJ : 12/09/2011
  • type TLogical = type Boolean;
  • TVariable = type Variant;
  • class procedure PleaseSort(var _array:array of TVariable);
  • var _improve_with_strings_and_objects___:TLogical;
  • _i:LongInt;
  • _j:LongInt;
  • _k:LongInt;
  • _stop:LongInt;
  • _swap:TVariable;
  • begin
  • _stop := System.High(_array);
  • _k := _stop shr 1;// div 2
  • while _k > Math.ZeroValue
  • do begin
  • for _i := Math.ZeroValue to _stop - _k
  • do begin
  • _j := _i;
  • while (_j >= Math.ZeroValue)
  • and (_array[_j] > _array[_j + _k]) // here is the test...!!!
  • do begin
  • _swap := _array[_j];
  • _array[_j] := _array[_j + _k];
  • _array[_j + _k] := _swap;
  • if _j > _k
  • then System.Dec(_j, _k)
  • else _j := Math.ZeroValue;
  • end;
  • end;
  • _k := _k shr 1; // div 2
  • end;
  • end;
  • Remarque :
    Voici, adaptée pour Delphi, un source trouvé sur le net !

    Pas plus d'une page de code, et une des méthodes les plus efficaces de tri de tableau que je connaisse...

    La ligne marquée du commentaire (here is the test) est la ligne de comparaison de deux éléments du tableau.

    Utile...

    Snippets en rapport avec : Tableaux, Tri, Delphi



    Codes sources en rapport avec : Tableaux, Tri, Delphi

    {Visual Basic, VB6, VB.NET, VB 2005} GENERATEUR DE TABLEAUX DE NOMBRES POUR VB/VBA
    Démo faite sur Excel. Fichier xls, dll (C et ASM), et txt contenant code de la dll dans zip. La dl...

    {C / C++ / C++.NET} FUSION DE DEUX TABLEAUX TRIÉS DANS UN TABLEAU TRIÉ ÉGALEMENT
    Ce programme permet,pour l'instant de fusionner deux tableaux triés dans l'ordre croissant en un seu...

    {Delphi} TRI ET PRÉSENTATION DE LISTBOX
    Un exemple de tri et de présentation des listbox en utilisant les procedures Delphi. Quatre list so...

    {Delphi} RUBIK'S CUBE AVEC FIREMONKEY 3D
    Le but de ce programme a été pour moi de travailler avec la partie 3D de Firemonkey et d'une certain...

    {Delphi} LE TRI PAR CASIERS
    Le TRI PAR CASIERS ( bucket sort ) très simple et très rapide avait été snobé au début de la micro-i...

    {JAVA / J2EE} LES TRIS AVEC JAVA
    Cette source explique comment trier simplement une ArrayList en java. Pour cela, j’utilise la ...

    {Visual Basic, VB6, VB.NET, VB 2005} PROCEDURE D'ENVOI DES PARAMÈTRES D'UN TRI SUR UN DATAGRID DANS UNE REQUETE
    Après 2 jrs de recherche j'étais obligé de créer ma propre procédure qui me permet d'envoyer une req...

    {Javascript / DHTML} CONSTRUCTION D'UNE TABLE TRIABLE À PARTIR D'UN TABLEAU 2D
    Mes premiers essais en Javascript : La TABLE Html est construite à la volée quelque soit le nombre ...

    {Delphi} FIREMONKEY : PATHDATA ET FORMAT SVG
    Troisième approche de FireMonkey avec l'animation d'objets sur des "chemins" au format SVG. Des bas...

    {Delphi} FIREMONKEY : ROTATION CUBE
    Seconde approche de FireMonkey avec Tutoriel en PDF. Ici je mixe les composants 2D et 3D en faisant...