Python 2.7 では、Python の組み込みsorted
関数はどのように機能しますか? どのようなアルゴリズムを使用しますか?
ベストアンサー1
Pythonの古いバージョン(2.3 - 3.10)では、ティムソルト:
Timsort は、マージ ソートと挿入ソートから派生したハイブリッド ソート アルゴリズムであり、さまざまな種類の実際のデータで優れたパフォーマンスを発揮するように設計されています。これは、2002 年に Tim Peters によって Python プログラミング言語で使用するために発明されました。このアルゴリズムは、すでに順序付けされているデータのサブセットを見つけ、そのサブセットを使用してデータをより効率的に並べ替えます。これは、特定の基準が満たされるまで、ランと呼ばれる識別されたサブセットを既存のランとマージすることによって行われます。Timsort は、Python バージョン 2.3 からバージョン 3.10 までの標準ソート アルゴリズムでした。現在では、Java SE 7 および Android プラットフォームで配列をソートするためにも使用されています。
3.11以降、Pythonはパワーソートこれは、Ian Munro と Sebastian Wild によって設計されました。これは、ソートされたデータの既存の実行に適応する、改良されたほぼ最適なマージソートです。