c++,如何统计一个数组中重复元素的个数(数组中只有一组重复)

如题,

第1个回答  2015-07-09
#include "stdafx.h"

#include <map>
#include <iostream>
int _tmain(int argc, _TCHAR* argv[])
{
int vec[] = { 1, 2, 3, 4, 5, 6, 7, 8, 1, 1 };
std::map<int, int> key_counts;

for(int i = 0; i < sizeof(vec) / sizeof(int); i++)
key_counts[vec[i]]++;//利用map容器key值唯一的特性,如果key不存在则添加一个,否则对已存在的计数自增

for(auto iter = key_counts.begin(); key_counts.end() != iter; ++iter)
std::cout << "Key:" << iter->first << " values:" << iter->second << std::endl;;

return 0;
}

以上在vs2013上建立一个控制台程序即可以运行本回答被网友采纳
第2个回答  2015-07-09
for循环 对比 一样 一个全局变量+1
第3个回答  2015-07-09
只有一组重复?两个字:遍历。如果我理解有问题请追问追问

新手,脑子抽了,怎么写都错,现在写出来了

本回答被提问者采纳
第4个回答  2015-07-09
每个都拿出来比较一下咯