web-dev-qa-db-ja.com

このpython sortメソッドの複雑さは何ですか?

リストのリストがあり、次を使用してソートしています

data=sorted(data, key=itemgetter(0))

このpythonメソッドの実行時の複雑さは何ですか?

23
Read Q

itemgetter(0)dataと一緒に使用される場合、O(1)であるとすると、ソートは平均および最悪の場合の両方でO(n log n)になります。

Pythonで使用されるソート方法の詳細については、 Wikipedia を参照してください。

30
NPE

並べ替えは並べ替えに似ていますが、最初の並べ替えはイテレート可能オブジェクトから新しい並べ替え済みリストを作成し、並べ替えは所定の場所で並べ替えを行います。主な違いは、スペースの複雑さです。

1
blackmath

それはTimsortであり、Timsortはマージソートと挿入ソートに基づいた一種の適応ソートアルゴリズムであり、それは比較ソートに属していると考えました、そして それは言った 、比較ソートは時間を保証できませんlg(N!)〜N log Nより小さい複雑さ.

0
Lerner Zhang