検索する連想配列について説明する必要があります。キーと値を使用できます。関数add、delete、getBy1st(キーで検索)、getBy2nd(値で検索)を使用します。たとえば、C ++の場合:
symmap<std::string, int> m;
m.insert(make_pair<std::string,int> ("hello", 1));
m.insert(make_pair<std::string,int> ("wow", 2));
...
m.getBy1st("hello"); // returns 1
m.getBy2nd(2);// returns "wow"
O(log(n))で機能し、std::pairに格納されます。データ構造が何を格納するために使用されたかを判断できません。多分私はそれを保存するためにrb-treeのいくつかのバリエーションを使うことができますか?