3

NSMutableArray要素が配列の末尾に追加/削除されたときに O(n) ではなく O(1) のパフォーマンスを持つどこかを読んだことがあります (例: removeAtObject:0or removeLastObject)。これにより、スタックまたはキューとしての使用に適しています – 必要性を否定しますこれらのコンテナー タイプの LinkedList 実装を作成します。

本当にそうですか?もしそうなら、Apple はどのようにしてこれを実現したのでしょうか? NSMutableArrayそうでない場合、配列内の要素の数が増加するにつれて、インスタンスの両端で要素を追加/削除するのにかかる時間が増加することを示す証拠はありますか?

PS:NSMutableArrayは本質的にCFArray("pure-C" に対応する) であり、ソース コードCFArrayは openであるため、内部の動作を検査できるはずです。

4

3 に答える 3