Supposons que j'ai une liste de choses (nombres, de garder les choses simples ici) et j'ai une fonction que je veux utiliser pour les trier par, en utilisant SortBy. Par exemple, le suivant trie une liste de numéros par le dernier chiffre:tri stable, à savoir, minimalement Disruptive tri
SortBy[{301, 201}, Mod[#,10]&]
Et remarquez comment deux (c.-à-tous) ces chiffres ont le même chiffre. L'ordre dans lequel nous les renvoyons n'a pas d'importance. Dans ce cas, Mathematica les renvoie dans l'ordre inverse. Comment puis-je m'assurer que tous les liens sont rompus en faveur de la façon dont les articles ont été commandés dans la liste originale?
(Je sais que c'est un peu trivial mais j'ai l'impression que cela arrive de temps en temps, alors j'ai pensé que ce serait pratique pour l'obtenir sur StackOverflow. me bat à elle)
Les tentatives de faire de ce plus des recherches. genre avec une perturbation minimale, sorte avec moins nombre de swaps, bRIS sur mesure, le tri avec swapping coûteux, stable de tri.
PS: Merci à Nicholas de remarquer que ce qu'on appelle le tri stable. C'était sur le bout de ma langue! Voici un autre lien: http://planetmath.org/encyclopedia/StableSortingAlgorithm.html
Est-ce que la chose recherchée ici n'est pas simplement un algorithme de tri stable? Voir: http://en.wikipedia.org/wiki/Sorting_algorithm#Stability –