bool containsDuplicate(int* nums, int numsSize) {
int j=0;
for(int i=0;i<numsSize;i++){
if(numsSize==1)
return 0;
else if(j!=i)
return containsDuplicate(nums[i],nums[j]);
j++;
}
}
想不出来哪里有问题,请大神指点,O(∩_∩)O谢谢!
bool containsDuplicate(int* nums, int numsSize)
{
int tmp=0;
if(numsSize<2) return 0;
for (int j = 0; j < numsSize - 1; j++)
{
for(int i=0;1<numsSize-1-j;i++)
{
if(nums[i]>nums[i+1])
{ tmp=nums[i];
nums[i]=nums[i+1];
nums[i+1]=tmp;
}
}
}
for(int a= 0;1<numsSize-1;a++)
{
if (nums[a]==nums[a+1]) return 1;
else return 0;
}
}
又写了一遍,换了思路:先排序,然后两两比较。。然而还是不对,求大神帮看问题
好几处错误,我就不一一写了,基本就是思路混乱,判断一个数组中元素重复值的基本思路就是一个一个取出值,并与剩余元素比较,一旦想等就返回真,已经比较过的元素不需要重复比较,然后你看看我的代码体会下。
追问要求是两个参数
用递归做,两个参数是不够的: