1. ホーム
  2. python

リストからセットへの変換の時間的複雑さは?

2023-09-25 10:29:09

質問

Pythonの公式サイトで集合演算の時間的複雑さの表があることに気づきました。しかし、私はちょうど、例えば、リストをセットに変換するための時間の複雑さは何ですか尋ねたい。

l = [1, 2, 3, 4, 5]
s = set(l)

これが実はハッシュテーブルであることはなんとなくわかるのですが、具体的にはどのように動いているのでしょうか?それならO(n)なのでしょうか?

どのように解決するのですか?

はい、リストに対する反復処理は O(n) で、各要素をハッシュ集合に追加するのは O(1) であり、したがって総ての操作は O(n) .