Linked List の複雑さの大部分は理解しています。アイテムへのアクセスは、最後にあるか存在しない可能性があるため、最悪の場合 O(n) です。ソートされていないリンク付きリストへの追加は O(1) です。これは、ヘッダーとして追加できるためです。
しかし、配列の場合、私は混乱しています。アクセスがいかに効率的であるか (O(1)) について多くのことを読みましたが、追加は必ずしも必要ではなく、削除もそうではありません。どうしてこれなの?
足し算がいつも最後じゃないから?O(1) ですよね?しかし、それが別の時点にある場合は、アイテムをシフトする必要があります。これは O(n) でしょうか? そして、これは高級言語で言えば「舞台裏」で行われていますよね?メモリの場所を移動していて、そこから複雑さが始まるのですか?
削除するとギャップが発生しますか? そして、それを埋める必要がありますか?
基本的に、10 個の項目を含む配列があり、5 番目のインデックス ポイントに項目を追加する場合、すべての項目をインデックス 5 以上から 1 つ上のインデックス ポイントにコピーする必要があり、操作がO(n)?
明確化をいただければ幸いです。