Écrivez un programme qui trie un vecteur de nombres (ou n'importe quel type d'élément) qui ressemble à un ou plusieurs bogues, mais c'est en fait correct.
- Le code doit être clair. Quelqu'un qui regarde le code doit facilement identifier qu'il s'agit d'un algorithme de tri et doit facilement confondre un morceau de code correct avec un bogue.
- Le bogue (apparent) peut par tout ce qui rend le code syntaxiquement ou sémantiquement mal formé (par exemple, rendre le programme non compilable / exécuté, présenter UB lorsqu'il est exécuté), faire en sorte que le programme produise des résultats incorrects, ne se termine pas ou ne soit pas déterministe.
- Le code doit en fait être bien formé et le programme doit produire de manière déterministe la sortie correcte dans un temps fini.
- L'entrée peut être codée en dur dans le programme ou peut être lue (à partir de l'utilisateur, du fichier, etc.).
- L'entrée est considérée comme valide et le programme n'est pas nécessaire pour vérifier l'exactitude de l'entrée.
- Tout algorithme de tri est accepté. Il n'est pas nécessaire que la structure de données pour contenir les nombres soit un vecteur réel. Le programme peut être conçu pour trier un nombre variable de nombres ou un nombre fixe de nombres (par exemple, un programme pour trier 3 nombres est correct ). Le tri peut être stable ou non (note: un programme conçu pour faire un tri stable qui a un bug apparent qui rend le tri instable, mais en réalité ce n'est pas un bug: le programme fait en fait un tri stable - est une réponse valide ).
- vous pouvez appeler toutes les fonctions (y compris les fonctions de tri) à l'exception des outils tiers (à moins qu'elles ne soient largement répandues et utilisées, par exemple
boos
pourC++
,JQuery
pourJavascript
- celles-ci peuvent être utilisées) - spécifier la langue
- commentez dans le code la partie qui ressemble à un bug.
- expliquez à quoi ressemble le bug en faisant mal.
- expliquer (dans une boîte de spoiler) pourquoi ce n'est pas un bug.
Il s'agit d'un concours de popularité. La réponse avec la plupart des votes l'emporte.
Ce défi est maintenant terminé. Le gagnant est @Clueless /codegolf//a/30190/11400 avec 8 votes. Merci à tous les auteurs!
Si vous souhaitez participer après l'attribution du gagnant, n'hésitez pas à ajouter une nouvelle réponse. Vous êtes hors course, mais nous sommes tous intéressés à voir des réponses intéressantes.