写一个C++ 程序,如何判断对于map中不同key,是否有重复的value?

 我来答
百度网友8415e69
2011-11-08 · TA获得超过100个赞
知道小有建树答主
回答量:194
采纳率:0%
帮助的人:90.3万
展开全部
就顺序读取map中的每个key,当遇到一个key都放到一个数组中标记次数,然后看有没有大于1的,就知道是否有重复的value了
wen8756jie
推荐于2018-03-26 · TA获得超过173个赞
知道小有建树答主
回答量:194
采纳率:60%
帮助的人:55.1万
展开全部
for(map<T,T>::iterator it = g_map.begin(); it != g_map.end(); it++)
{
for(map<T,T>::iterator it1 = g_map.begin();it1 != g_map.end(); it1++)
{
if(it->first != it1->first && it->second == it1->second)

return 1;
}
}
return 0;
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
堵静逸kd
推荐于2016-03-04
知道答主
回答量:13
采纳率:0%
帮助的人:9.3万
展开全部
typedef map<uint32, CProConnectHandle*> mapConnectManager;
mapConnectManager m_mapConnectManager;
int count = 0;
for (mapConnectManager::iterator it = m_mapConnectManager.begin(); it != m_mapConnectManager.end(); ++it)
{ // store element in key_type object
mapConnectManager::key_type val = it->second->GetDeviceID();
for (mapConnectManager::iterator it2 = m_mapConnectManager.begin(); it2 != m_mapConnectManager.end(); ++it2)
{
mapConnectManager::key_type val2 = it->second->GetDeviceID();
if (val == val2) count++;
if (count >= 2) return;
}

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式