Les Snippets

Connexion

Tri de nombres

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 18/07/2007 17:00:30 et initié par JMO [Liste]
Date de mise à jour : 24/06/2008 12:51:07
Vue : 32665
Catégorie(s) : Algorithme
Langage sélectionné : ObjectiveCaml
Langages dispo pour ce code :
- VBScript
- Javascript
- C, C++
- VB 2005, VB.NET 1.x
- C# 2.x
- VB6, VBA
- ObjectiveCaml
- ObjectiveCaml
- Tcl
- Voir tous les langages pour ce code snippet



Langage : ObjectiveCaml
Date ajout : 09/02/2008
Posté par coucou747 [Liste]
let rec sort = function
    | []->[]
    | tete::[]->[tete]
    | tete::queue ->
        ( (sort (List.filter (function x -> x < tete) queue )) @ [tete]) @
          (sort (List.filter (function x -> x >= tete) queue ));;
Remarque :
c'est un qsort... Vous ne revez pas, en caml, on fait un qsort en 6 lignes... le defaut de ce qsort est qu'il prend le pivot au debut et non au centre.
Langage : ObjectiveCaml
Date ajout : 09/02/2008
Posté par coucou747 [Liste]

(*permet d'inserrer un element dans une liste deja triee*)
let rec inserer = function
    | (x, []) -> [x]
    | (x, tete::[]) -> if x < tete then [x;tete] else [tete;x]
    | (x, tete::queue) -> if x < tete then [x;tete] @ queue else [tete] @ inserer(x, queue);;
(* On peut alors definir le tri par insertion*)
let rec insertSort = function
    | [] -> []
    | tete::[] -> [tete]
    | tete::queue -> inserer(tete, insertSort(queue));;


Snippets en rapport avec : Tri, Nombre, Croissant, Décroisant



Codes sources en rapport avec : Tri, Nombre, Croissant, Décroisant

{C / C++ / C++.NET} TRANSFORMER UN ENTIER EN DEUX NOMBRES COMPOSÉ DES MEMES CHIFFRES ORDONNÉS PAR ORDRE CROISSANT ET DÉCROISSANT
Programme permettant de transformer un nombre en deux nombres composés des mêmes chiffres ordonnés d...

{C / C++ / C++.NET} ALGORITHME DE TRI D'UN TABLEAU PAR ORDRE CROISSANT OU DÉCROISSANT.
Bonjour, Le code source que je vais présenter est simple mais on y pense pas tout le temps. Il cla...

{Visual Basic, VB6, VB.NET, VB 2005} TRI COMPLEXE SUCCESSIF MULTI OPTION AVEC UNE MSHFLEXGRID
Tri complexe, rapide et simple à l'aide d'une MshFlexGrid. 4 colonnes successives possible : par exe...

{PHP} TRIE ET FILTRE UNIVERSEL DE REQUÊTES DANS UN FORMULAIRE À PARTIR DE SES CONTRÔLES
Voici un script, composé d'un fichier d'inclusion et d'une page de déclaration de variables, qui per...

{PDA / PocketPC} TRI D'UN TABLEAU DE VALEUR DANS L'ORDRE CROISSANT
Petit bout de code sans aucune prétention, pour que le site possède des algorithmes types, au mi...

{Visual Basic, VB6, VB.NET, VB 2005} CHIFFRE EN LETTRE FONCTION
Une petite fonction simlpe pour transformer un chiffre en lettre. Exemple: "15193" >> dix ...

{Assembleur} MULTIPLIER POUR DIVISER, NOMBRES MAGIQUES
la division est lente par rapport a la multiplication. On va chercher a définir ce qu'est l'inver...

{PHP} HIT COUNTER
Titre: Hit counter Hit counter un exemple de code qui monter comment créer un visiteurs contrer av...

{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} 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...