读书人

一个vector 求其中出现最多次的元素解

发布时间: 2012-04-10 21:03:56 作者: rapoo

一个vector 求其中出现最多次的元素
如题

[解决办法]
假设有一个std::vector<T> testList;
建立一个map
std::map<T, int> keyList; //以元素值作为key,计数作为value
遍历test列表
std::vector<T>::iterater iter;
for(; iter != testList.end(); ++iter)
{
keyList[*iter]++;
}
遍历keyList列表找到value最大的key
std::map<T, int>::iterater iter;
int maxvalue = 0;
int key = -1;
for(; iter != keyList.end(); ++iter)
{
int temp = 0;
temp= iter->second;
if(temp>=maxvalue )
{
key = iter->first;
}
}



读书人网 >C++

热点推荐