一个查找更新的数据结构设计有关问题:多key 对应同样的value数据结构
一个查找更新的数据结构设计问题:多key 对应同样的value数据结构现在有个需求如下:1、2个key对应同样的valu
一个查找更新的数据结构设计问题:多key 对应同样的value数据结构
现在有个需求如下:
1、2个key对应同样的value
2、2个key不一定同时出现,比如开始是一个key1/value。然后又出现一个key2,需要key2和key1的value一样。
3、并且2个key可以都可能更新,比如待会又来一个key3,需要和key2指向的value一样。但是此时可以age掉key1了。
4、同一个时刻也就说最大可能是使用2个key
类似许下的数据结构需求:
C/C++ code{key1;key2;value_struct;}
就是需要key1、key2可以动态更新
我先在用hash_map/map貌似都不能满足要求啊。。。求教。 如何设计实现思路呢?
[解决办法]mutimap;
[解决办法](value => [k1, k2])
这样就好了……
[解决办法]正如二楼说的,你的提问不是很明白。
1.
既然是key,key就是不可重复的。vlaue可以重复。
我不知道,你的“age掉key1”的,准则是什么,总是替换最旧的元素?
2.
你可以封装一个,map<value_type> two_elem(2);
class
{
public:
void add(key_type,value_type);//添加元素,并及时的 “替换”
private:
map<value_type> two_elem(2);
}
[解决办法]写错了,应为map <key_type ,value_type> two_elem(2);