teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2019/05/31 00:46

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -1,4 +1,8 @@
1
- list.removeがO(n)なのに対し、set.removeがO(1)だからです。
1
+ list.removeがO(n)なのに対し、set.removeがO(1)だからです。(**註**)
2
2
 
3
3
  listは線型探索のために要素にシーケンシャルにアクセスしなければならないのに対し、
4
- setはハッシュ値を用いて要素にランダムアクセスすることができます。
4
+ setはハッシュ値を用いて要素にランダムアクセスすることができます。
5
+
6
+ **註**:
7
+ あくまで平均計算量。
8
+ ハッシュ関数の質が悪く、ハッシュの衝突が多い場合はリストより遅くなり得ます。