题目

Given an array of integers, find if the array contains any duplicates.

Your function should return true if any value appears at least twice in the array, and it should return false if every element is distinct.

Example 1:

1
2
Input: [1,2,3,1]
Output: true

Example 2:

1
2
Input: [1,2,3,4]
Output: false

Example 3:

1
2
Input: [1,1,1,3,3,4,3,2,4,2]
Output: true

分析

这是一个基础的问题 分析比较简单只要,当前的数组中的数值和后面的有相等的就返回true 知道最后一个都没有相同的返回false

C语言代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdio.h>
bool containsDuplicate(int* nums, int numsSize) {
if(numsSize==1)
{
return false;
}
for(int i=0;i<numsSize;i++)
{
for(int j=i+1;j<numsSize;j++)
{
if(nums[i]==nums[j])
{
return true;
}
}
}
return false;
}
int main()
{
int nums[]={3,1};
int numsSize= sizeof(nums)/sizeof(int);
printf("%d",containsDuplicate(nums,numsSize));
return 0;

}