Disons que j'ai une liste telle que [3, 0, 4, 2, 1]
, et que j'utilise le tri par sélection pour le trier, je pourrais le visualiser comme ceci:
3,0,4,2,1
|-|
0,3,4,2,1
|-----|
0,1,4,2,3
|-|
0,1,2,4,3
|-|
0,1,2,3,4
Ce défi consiste à visualiser le tri comme ceci.
Contribution
Votre entrée sera une liste d'entiers positifs, dans le format de votre choix.
Tâche
Votre soumission doit trier la liste d'entrée en échangeant uniquement deux éléments à la fois, et à chaque échange, la soumission doit afficher la liste et un caractère sous chacun des éléments en cours d'échange. Si un nombre qui a été échangé a plus d'un chiffre, le caractère peut être n'importe où en dessous. À la fin, la soumission devrait afficher la liste triée.
Autres règles
- Le tri doit utiliser moins de swaps que n 4 , où n est la longueur de la liste.
- Le tri n'a pas besoin d'être déterministe.
- Les caractères sous l'échange peuvent être n'importe quel caractère sauf l'espace.
n^4
? Vous êtes un peu généreux ici.
0
(veuillez corriger uniquement l'exemple afin de ne pas invalider les réponses qui ne peuvent pas gérer 0)