NSMutableSet の要素にランダムにアクセスすることはできないので、リンクされたリストのように実装されているということですか?
つまり、NSMutableArray よりも挿入/削除が高速になりますか?
NSMutableSet の要素にランダムにアクセスすることはできないので、リンクされたリストのように実装されているということですか?
つまり、NSMutableArray よりも挿入/削除が高速になりますか?
私はObjective-Cプログラマーではありませんが、通常、セットはハッシュテーブルを介して実装されます。ハッシュテーブルは、(適切に実行された場合)挿入、削除、およびルックアップ用にO(1)を生成します。
技術的には、ハッシュは通常O(M)を提供します。ここで、Mはキーのサイズですが、セットの場合は、定数であるキーオブジェクトのIDを使用するだけなので、O(1)に戻ります。
いいえ。ハッシュを使用するため、ルックアップ時間が短縮されます。
セットは通常、バランスの取れた二分探索木 (赤黒木、avl 木など) で実装されます。