重複の可能性:
Pythonの組み込みのsort()メソッドについて
sort()
メソッドが数値のリストを並べ替えるために使用する並べ替えアルゴリズムはどれですか?どうすればそれを証明できますか?
seq = list_of_numbers
seq.sort()
重複の可能性:
Pythonの組み込みのsort()メソッドについて
sort()
メソッドが数値のリストを並べ替えるために使用する並べ替えアルゴリズムはどれですか?どうすればそれを証明できますか?
seq = list_of_numbers
seq.sort()
これは、(Pythonで有名なZenの)TimPetersによってPython用に開発されたアルゴリズムであるTimSortを使用します。
これは、マージソートと挿入ソートのハイブリッドであり、現在JavaとAndroidでも使用されています。Pythonソースコードには、より詳細な説明が含まれています。実装はlistobject.c
Cソースにあります。
並べ替えアルゴリズムを決定し、正しいことを証明する最も簡単な方法は、ソースを調べることです。
これはあなたを啓発するかもしれません。http://www.daniweb.com/software-development/python/code/216689/sorting-algorithms-in-python
ボンネットの下にある c コードを表示することで、それを証明できます。
これはあなたの質問とほぼ同じです。Python の組み込みの sort() メソッドについて