c++multimap问题,假设我有一些键值对<charA,charB>,我想让程序告诉我charA有那些值,而且重复了几次谢谢
<aaa,b><aab,v><ff,a><aaa,t><aaa,wq><ff,fa>...比如说是如上值,charA一共有aaaaabff,其中aaa出现了3次aab出现...
<aaa,b>
<aab,v>
<ff,a>
<aaa,t>
<aaa,wq>
<ff,fa>
...
比如说是如上值,charA一共有aaa aab ff,其中aaa出现了3次 aab出现了1次 ff出现了2次
怎么编程序?
我的<charA,charB>都是上文传下来的参数,不是上边给这些固定值,我是要读一个未知的数据库 我并不知道搜集到charA是什么值 展开
<aab,v>
<ff,a>
<aaa,t>
<aaa,wq>
<ff,fa>
...
比如说是如上值,charA一共有aaa aab ff,其中aaa出现了3次 aab出现了1次 ff出现了2次
怎么编程序?
我的<charA,charB>都是上文传下来的参数,不是上边给这些固定值,我是要读一个未知的数据库 我并不知道搜集到charA是什么值 展开
3个回答
展开全部
//multimap这样使用
typedef multimap<string,string> MulStr;
MulStrdatas;
datas.insert(make_pair("aaa","b"));
datas.insert(make_pair("aaa","v"));
datas.insert(make_pair("ff","a"));
datas.insert(make_pair("aaa","t"));
datas.insert(make_pair("aaa","wq"));
datas.insert(make_pair("ff","fa"));
pair<MulStr::iterator, MulStr::iterator> p = datas.equal_range("aaa");
for (MulStr::iterator i=p.first; i!=p.second; ++i)
{
cout<<it->first<<" "<<it->second<<endl;
}
追问
我的都是上文传下来的参数,你明白我意思么,不是上边给这些固定值,我是要读一个未知的数据库
展开全部
楼上“9527坏蛋”的回答就是方法所在。结合你另一个问题的意思,可以理解为上文传下来
的参数<charA,charB>是通过vector传下来的吗?并且vector中存的一个结构体,里面有两个成员,即A和B?
的参数<charA,charB>是通过vector传下来的吗?并且vector中存的一个结构体,里面有两个成员,即A和B?
追问
我打算用map获得不重复的key,用multimap获得重复的key,再迭代对比这两个map
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
void fun(const multimap<char,char>&r,char a){
for(auto m:r){
if(m.frist==a){
//该值为所需之一
}
}
auto ite=r.find(a);
while(ite!=r.end()){
if(ite->frist!=a)break;
//该跌代器指向所需值之一
}
}
for(auto m:r){
if(m.frist==a){
//该值为所需之一
}
}
auto ite=r.find(a);
while(ite!=r.end()){
if(ite->frist!=a)break;
//该跌代器指向所需值之一
}
}
追问
我的都是上文传下来的参数,你明白我意思么,不是上边给这些固定值,我是要读一个未知的数据库 我并不知道搜集到charA是什么值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询