概述
#include <stdio.h>
#include <memory.h>
int GetMaxCount(int* pArr,int n,int* pRecv)
{
typedef struct tagMap
{
int data;
int count;
}Map;
Map* pMaps = malloc(n*sizeof(Map));
memset(pMaps,0, n*sizeof(Map));
int len = 0;
int i, j;
for (i = 0; i < n; i++)
{
for (j = 0; j < len; j++)
{
if (pMaps[j].data == pArr[i])
{
pMaps[j].count++;
break;
}
}
if (j == len)
{
pMaps[len].data = pArr[i];
pMaps[len].count++;
len++;
}
}
int index = 0;
int maxNum = pMaps[index].count;
for (i = 0; i < len; i++)
{
if (pMaps[i].count>maxNum)
{
maxNum = pMaps[i].count;
index = i;
}
}
*pRecv = pMaps[index].data;
free(pMaps);
return maxNum;
}
void main()
{
int a[] = {1,1,1,2,1,1};
int item;
int count = GetMaxCount(a, sizeof(a) / sizeof(int), &item);
printf("%d出现的次数最多,为%d次n", item, count);
getchar();
}
最后
以上就是凶狠小鸭子为你收集整理的求数组中出现次数最多的元素及其次数的全部内容,希望文章能够帮你解决求数组中出现次数最多的元素及其次数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复