解题思路-LeetCode第217题:存在重复元素

解题思路-LeetCode第217题:存在重复元素
题目描述:
给定一个整数数组,判断是否存在重复元素。
如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。

示例 1:
输入: [1,2,3,1]
输出: true

示例 2:
输入: [1,2,3,4]
输出: false

示例 3:
输入: [1,1,1,3,3,4,3,2,4,2]
输出: true

解题思路:
先将数组升序排序,再从小到大判断是否有重复元素,一旦出现重复,返回true即可。

代码如下:
在这里插入图片描述
提交后,通过

注解:

     qsort函数
     功能: 使用快速排序例程进行排序
     头文件:stdlib.h
     用法:  void qsort(void* base,size_t num,size_t width,int(__cdecl*compare)(const void*,const void*)); 
     参数:1 待排序数组,排序之后的结果仍放在这个数组中
           2 数组中待排序元素数量
           3 各元素的占用空间大小(单位为字节)
           4 指向函数的指针,用于确定排序的顺序,  需要用户自定义一个比较函数
           如比较函数 int cmp(const void *a, const void *b) 中有两个元素作为参数(参数的格式不能变),返回一个int值,比较函数cmp的作用就是给qsort指明元素的大小是怎么比较的。
          参数列表是两个空指针,现在他要去指向你的数组元素。所以需要强制转换为你当前的类型,然后取值。

版权声明:本文为weixin_48153141原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。