J'ai ma propre définition du "tri" d'une séquence.
Quelle que soit la séquence [a, b, c,…], nous la comparons à la séquence triée contenant les mêmes éléments, comptons le nombre de correspondances et la divisons par le nombre d'éléments de la séquence.
Par exemple, séquence donnée, [5,1,2,3,4]
nous procédons comme suit:
1) trier la séquence: [1,2,3,4,5]
2) comparez la séquence triée avec l'original en la déplaçant d'une position à la fois et en comptant le nombre maximal de correspondances:
[5,1,2,3,4]
[1,2,3,4,5] one match
[5,1,2,3,4]
[1,2,3,4,5] no matches
[5,1,2,3,4]
[1,2,3,4,5] no matches
[5,1,2,3,4]
[1,2,3,4,5] no matches
[5,1,2,3,4]
[1,2,3,4,5] no matches
[5,1,2,3,4]
[1,2,3,4,5] 4 matches
[5,1,2,3,4]
[1,2,3,4,5] no matches
...
[5,1,2,3,4]
[1,2,3,4,5] no matches
3) Le nombre maximal de correspondances est 4, nous pouvons calculer le "sort" comme 4/5 = 0.8.
Le tri d'une séquence triée serait 1 et le tri d'une séquence avec des éléments placés dans l'ordre inverse serait 1 / n.
L'idée sous-jacente à cette définition est d'estimer la quantité minimale de travail nécessaire pour convertir une séquence en une séquence triée. Dans l'exemple ci-dessus, nous ne devons déplacer qu'un élément, le 5 (il y a plusieurs façons, mais le déplacement de 5 est le plus efficace). Lorsque les éléments seraient placés dans l'ordre inverse, nous aurions besoin de déplacer 4 éléments. Et lorsque la séquence a été triée, aucun travail n'est nécessaire.
J'espère que ma définition a du sens.