リストのリストがあり、次を使用してソートしています
data=sorted(data, key=itemgetter(0))
このpythonメソッドの実行時の複雑さは何ですか?
itemgetter(0)
がdata
と一緒に使用される場合、O(1)
であるとすると、ソートは平均および最悪の場合の両方でO(n log n)
になります。
Pythonで使用されるソート方法の詳細については、 Wikipedia を参照してください。
並べ替えは並べ替えに似ていますが、最初の並べ替えはイテレート可能オブジェクトから新しい並べ替え済みリストを作成し、並べ替えは所定の場所で並べ替えを行います。主な違いは、スペースの複雑さです。
それはTimsortであり、Timsortはマージソートと挿入ソートに基づいた一種の適応ソートアルゴリズムであり、それは比較ソートに属していると考えました、そして それは言った 、比較ソートは時間を保証できませんlg(N!)〜N log Nより小さい複雑さ.