Posté par gc .
En réponse au journal M'enfin ?? ....
Évalué à 6.
Normalement la stabilité de l'algorithme ne devrait pas influer sur sa performance. Un algorithme de tri stable semble être (d'après perldoc -f sort) la caractéristique de garder l'ordre initial d'éléments qui comparent comme étant égaux. Vu le reste de la doc perl et des chiffres ci-dessous, je dirais que la demande d'un algo stable fait passer de l'utilisation de quicksort à mergesort, qui est plus efficace dans ce cas particulier.
[^] # Re: Pour sort, ca depend des options
Posté par gc . En réponse au journal M'enfin ?? .... Évalué à 6.
[gc@meuh /tmp] head meuh
39541
21152
70685
8033
13506
82620
34950
34526
99135
29911
[gc@meuh /tmp] /usr/bin/time sort -n meuh > n
0:29.01elapsed
[gc@meuh /tmp] /usr/bin/time sort -ns meuh > ns
0:21.11elapsed
[gc@meuh /tmp] cat meuh | time perl -e 'print sort {$a <=> $b} ' > perldef
0:12.18elapsed
[gc@meuh /tmp] cat meuh | time perl -e 'use sort _quicksort; print sort {$a <=> $b} ' > perlqui
0:18.85elapsed
[gc@meuh /tmp] cat meuh | time perl -e 'use sort _mergesort; print sort {$a <=> $b} ' > perlme
0:12.17elapsed