Page 1 sur 1

[R] Pivot Quicksort

Posté : dim. 31 août 2014 00:18
par sozary
Bonjour à tous.
Je cherche à faire un algorithme Quicksort avec donc la récursivité.
J'ai donc étudié attentivement l'article de jbnh sur le sujet.
Malheureusement, je n'aime pas trop sa manière de procéder, bien qu'elle soit optimale, elle n'est pas adapté à un débutant comme moi.
Je voudrais donc savoir quel pivot je pourrais choisir, et comment procéder simplement afin d'avoir quelque chose de compréhensible pour moi à coder :)!

Re: [..] Pivot Quicksort

Posté : dim. 31 août 2014 01:03
par jchd
Ah, les algos de tri !

Voir ici un aperçu des possibilités de choix du pivot et les conséquences qui en découlent.
Qu'est-ce qui te pose problème ?

Sinon, plonges-toi dans une (grosse) référence sur le sujet (palmes, masque et bouteilles [d'air] impératifs !).

Re: [..] Pivot Quicksort

Posté : dim. 31 août 2014 12:09
par sozary
Oula ^^! Je ne vais pas me lancer dans une lecture de la sorte :)!
Bien que ce livre soit intéressant, je pense pas pouvoir avoir le courage de copier chaque ligne du livre dans google traduction ;)!
" Pour chacun des sous-tableaux, on définit un nouveau pivot et on répète l'opération de partitionnement.", cf wikipédia. Or, comment choisir ce pivot?

Re: [..] Pivot Quicksort

Posté : dim. 31 août 2014 13:06
par jchd
En effet, je déconseille vivement à quiconque de se lancer dans la traduction de TAOCP. Déjà capter Knuth en intégralité demande des super-pouvoirs, alors le traduire... Pourtant il y a des traductions disponibles en chinois, japonais, thèque, roumain, russe, espagnol, polonais, allemand, macédonien, mais aucune en français conformément à notre dynamisme légendaire.

Relis bien cette partie où l'on t'expose brièvement les choix possibles et en pur hexagonal siouplé !

La justification mathématique de la complexité attendue en moyenne dans les différentes variantes n'est que de la combinatoire, mais leur développement formel est inutile ici. Pour ça, voir ton copain Knuth :mrgreen:

Re: [..] Pivot Quicksort

Posté : dim. 31 août 2014 13:20
par sozary
"Une manière simple de choisir le pivot est de prendre toujours le premier élément du sous-tableau courant (ou le dernier)", cf. wikipédia...
Tout est dit :mrgreen: ! Je dois avoir un problème oculaire me permettant de lire uniquement une ligne sur deux :mrgreen: !
Merci!

Re: [R] Pivot Quicksort

Posté : dim. 31 août 2014 16:28
par jchd
Le sous-titre de cette partie est "Pivot arbitraire" et on y fait bien ce qu'on dit qu'on fait : on effectue un choix arbitraire et on roule avec ça. Qu'est-ce qui te fait loucher là-dedans ?