首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

一个查找更新的数据结构设计有关问题:多key 对应同样的value数据结构

2012-05-01 
一个查找更新的数据结构设计问题:多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); 

热点排行