私は基本的なOOP C++コースのプロジェクトを書いています。私はタイプMedia
(そして派生物Book
、Movie
、Album
)のオブジェクトのセットを実装しなければなりません。これらのセットの操作は、要素を追加すること、特定の要素を削除すること(必ずしも最初または最後ではない)、セットを検索すること(複数の結果を返すことができる)です。並べ替える必要はありませんが、私はそれが良い追加だと思った。このデータのどのデータ構造ですか?
私は最高のデータ構造になりますか?単純な配列、ベクトルまたはリスト? (私は実装を書く必要がありますが、標準クラスは使用できません。) 大きなデータセットを扱っているわけではないので、私は実際に効率やメモリ消費を心配していませんが、私がなぜ特定のデータ構造を選んだのかを説明してください。
アイテムの削除と追加にはListが適していると考えましたが、ベクトルには検索関数(インデックスの配列を返す可能性がある)に役立つインデックス演算子[]があります。
ええと、あなたは "さまよっていた"え? :P –
@TonyTheLion:はい、彼はさまよっていましたが、私は彼に "不思議に思う"ようにしました:P – Nawaz
あなたは正しい道であるようです。 [Linked Lists](http://en.wikipedia.org/wiki/Linked_list)と[Hash Tables](http://en.wikipedia.org/wiki/Hash_table)を参照することをお勧めします –