2011-06-20 6 views
1

データ収集の要件は、順番に保管しておく必要があり、コレクションに多くの追加と削除が必要なコンピュータプログラムを作成しようとしています。どのようなデータ構造がこれをモデル化するのに最適でしょうか?データ構造の質問

私はベクターを考えていましたが、それは注文されていません。助言がありますか?私は答えが顔で私を見つめていると確信していますが、私のノートを見て、私は何かを見つけることができません。

これについてのお手伝いがあれば幸いです。

+0

私はこれが宿題であると仮定していますか? – Bart

+0

宿題の場合は、宿題を追加してください。 –

+0

質問は立っているので、C++とは関係ありません。 C++で使用するデータ構造を知りたいのですが、一般的にどのようなデータ構造を使用するのか知りたいですか? –

答えて

2

古典的な答えは、ツリーです。最も単純なのはバイナリ検索ツリーですが、Red-BlackツリーやAVLツリーを探すこともできます。 boost graph libraryも良い出発点かもしれません。

1

見ると少し難しいのに....追加や削除は正面からだけで終わるのならば、あなたがQUEUE を使用して好むことができますが、それはどこでもデータであることができるならば、私はlink listを示唆しています効率的な削除と更新が行われる可能性があります。 ほしいと思っています.... EDIT .... 私の答えに加えてより正確に... treeはオプションです.....

+0

ソートしておきたい場合は.... B-Treeは良いオプションです..... –

0

私はベクトルが仕様には十分だと思います。

std::vector<int> d; 
d.push_back(1); 
d.push_back(4); 
d.push_back(2); 
d.push_back(3); 
std::vector<int>::const_iterator it; 
for (it = d.begin(); it != d.end(); it++) { 
    std::cout << *it << std::endl; // show 1 4 2 3 
} 
// language: cpp 

「ORDER」が「SORTED」であることを意味しますか?