怎样用C++找出一个数组中的相同的数的个数??

 我来答
myqoo02
推荐于2017-09-25 · TA获得超过1068个赞
知道小有建树答主
回答量:286
采纳率:0%
帮助的人:146万
展开全部
循环就好了,这是最简单的算法。例如数组a为待处理数组。
int* b = (int*)malloc(n*sizeof(int));
for(int i = 0;i < n;i++)
{
for(int j = 0;j < m;j++)
{
if(a[n]==b[j])
b[j]++;
}
if(j==m)
b[m] = 1;
m++;
}
如果需要知道重复的数字是什么,则b定义为结构体数组
struct record
{
int data,
int count
};
135429617
2011-12-08 · 超过32用户采纳过TA的回答
知道答主
回答量:158
采纳率:0%
帮助的人:99.1万
展开全部
一个数组中可能有多对相同的数,是否应传入一个数作为要查找的数
int find(int a[] ,int num ,int n) //num为数组元素个数,n为要查找的数
{
int count=0;
for(int i=0;i<num;i++)
{
if(a[i]==n)
count++;
}
return count ;

}
}
追问
n是不定的~  是其中的相同的数,可能有多个数的~
追答
你是想实现什么功能,是要把所有的相同的情况都输出吗
void find(int arr[] , int num )
{
for(int i=0;i<n-1;i++)
{
int t= arr[i] ;
int n=0;
for(int j=i+1;j<n;j++)
{
if(t==arr[j])
n++;
}
cout<<t<<"的个数为"<<n<<endl;
}
}
写的比较烂,效率很低
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式