重複の可能性:
len()関数のコスト
len()
リスト内のオブジェクトを反復処理してから、それらのカウントを返しますか?したがって、それにO(n)を与えます。
または....
Pythonリストは、追加および削除されたオブジェクトのカウントを保持し、len()
呼び出されたときにこの「カウント」を返すだけですか?したがって、 O(1)を与えます。
重複の可能性:
len()関数のコスト
len()
リスト内のオブジェクトを反復処理してから、それらのカウントを返しますか?したがって、それにO(n)を与えます。
または....
Pythonリストは、追加および削除されたオブジェクトのカウントを保持し、len()
呼び出されたときにこの「カウント」を返すだけですか?したがって、 O(1)を与えます。
Pythonリストはそれ自体の長さを知っています。O(1)時間len
かかります。リストは実際には配列であり、線形時間がかかるLispのようなリンクリストではありません。length
を定義するすべての組み込みオブジェクトの場合、__len__()
O(1)になります。独自のオブジェクトを実装__len__()
する場合、それは何でもかまいません。