用递归算法求解数组有没有相同元素的问题

 我来答
草原上之狼
高粉答主

2018-05-16 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2.9万
采纳率:93%
帮助的人:3894万
展开全部
你的是有几组元素相同还是 某个元素相同的个数?? 说清楚再 我写给你吧
首先要求数组是实现排序的 不然 很难一个递归搞定
这是排序后的数组里面有多少相同的元素的个数
#include<iostream>
using namespace std;
template<class M>
int sum1(const M *a,const M * c,int e)//a是头指针 c是数组末端的下一位
{
if(a==c)
return e;
else{
if(*a==*(a+1)&&*a!=*(a-1))
++e;
return sum1(a+1,c,e);
}
}
int main()
{
int a[]={0,0,0,0,1,1,1,2,3,4,4,5,5,5,6,6,6,7,7,7};
int *p=a;
int *k=a+sizeof(a)/sizeof(a[0]);
int sun=sum1(p,k,0);
cout<<sun<<endl;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式