当前位置: 代码迷 >> 综合 >> [LeetCode:数组篇3]:存在重复
  详细解决方案

[LeetCode:数组篇3]:存在重复

热度:42   发布时间:2023-10-01 03:16:00.0

给定一个整数数组,判断是否存在重复元素。

如果任何值在数组中出现至少两次,函数返回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

解:

class Solution {
      上市:bool containsDuplicate(vector <int>&nums) {
     如果(nums.size()<2)返回false;for(int i = 0; i <nums.size(); i ++){
     int temp = nums [i];for(int j = i + 1; j <nums.size(); j ++){
     如果(温度== NUM??S [J])返回true;}}返回false;} };

上面这个是比较慢的,利用指针最快了,sort函数可以对数进行升序排列。

静态自动x = [] {
     的std :: IOS :: sync_with_stdio(假);的std :: cin.tie(NULL);返回0; }(); class Solution {
      上市:bool containsDuplicate(vector <int>&nums){
     int iSize = nums.size();如果(iSize <2){
     返回false;}std :: sort(nums.begin(),nums.end());
for(int i = 0; i <iSize-1; ++ i){
     if(nums [i] == nums [i + 1]){
     返回true;}}
返回false;} };