Discussion:Implémentation d'algorithmes classiques/Algorithmes de tri/Tri rapide

Code C faux : modifier

Après avoir testé le code C, j'ai remarqué l'ajout systématique d'un 0 en début du tableau (et donc la perte du dernier élément).

Codes testés : modifier

Remarque pour python : modifier

Le code proposé n'est absolument pas pythonique. Je peux comprendre que cela correspond mieux peut-etre à l'algorithme initial en pseudocode, mais le code Ruby est lui un code simple. Une implémentation plus proche de l'esprit de python (testée) serait :

def qsort(liste):
    if len(liste) <2 :
        return liste
    else:
        p = choice(l)
        return qsort([x for x in liste if x <= p]) + [p] + qsort([x for x in liste if x > p])

Rosslaew (discussion) 30 septembre 2012 à 03:33 (CEST)Répondre

Cette version n'offre pas de variable début et fin. JackPotte ($) 30 septembre 2012 à 11:18 (CEST)Répondre
Revenir à la page « Implémentation d'algorithmes classiques/Algorithmes de tri/Tri rapide ».