Swift 存在重复 - LeetCode

作者: 韦弦Zhy | 来源:发表于2018-03-31 17:23 被阅读239次

存在重复

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

如果任何值在数组中出现至少两次,函数应该返回 true。如果每个元素都不相同,则返回 false。

这个算是比较容易的。(判断的方法依据就是:我不用百度会做😂)

-1)使用Set

代码如下:

class Solution {
    func containsDuplicate(_ nums: [Int]) -> Bool {
        let set = Set(nums)
        return set.count != nums.count
    }
}

执行时间:52ms

-2) 排序判断前后有没有相等的元素(时间多少取决于排序算法,我这直接用的Swift提供的sorted

代码如下:

class Solution {
    func containsDuplicate(_ nums: [Int]) -> Bool {       
         if nums.isEmpty || nums.count == 1 {
             return false
         }
        
         let nums = nums.sorted()
        
         for i in 0..<nums.count - 1 {
             if nums[i] == nums[i + 1] {
                 return true
             }
         }
         return false
    }
}

执行用时:96 ms

-3)使用哈希表(Dictionary)

代码如下:

class Solution {
    func containsDuplicate(_ nums: [Int]) -> Bool {
         for i in 0..<nums.count {
            if let _ = dic[nums[i]] {
                return true
            }
            dic[nums[i]] = i
        }
        return false
    }
}

执行用时:68 ms

开始用Swift学习算法中,在LeetCode中开始做初级算法这一章节,将做的题目在此做个笔记吧。

相关文章

  • Swift 存在重复 - LeetCode

    存在重复 给定一个整数数组,判断是否存在重复元素。 如果任何值在数组中出现至少两次,函数应该返回 true。如果每...

  • Swift 存在重复 - LeetCode

    题目:存在重复 给定一个整数数组,判断是否存在重复元素。如果任何值在数组中出现至少两次,函数返回 true。如果数...

  • Swift - LeetCode - 存在重复元素

    题目 给你一个整数数组 nums。如果任一值在数组中出现至少两次 ,返回 true;如果数组中每个元素互不相同,返...

  • Swift - LeetCode - 存在重复元素 II

    题目 给你一个整数数组 nums 和一个整数 k,判断数组中是否存在两个 不同的索引 i 和 j,满足 nums[...

  • [leetcode]存在重复

    给定一个整数数组,判断是否存在重复元素。 如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都...

  • Leetcode-存在重复

    给定一个整数数组,判断是否存在重复元素。如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不...

  • LeetCode 数组 存在重复

    给定一个整数数组,判断是否存在重复元素。 如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都...

  • LeetCode初级-存在重复

    题目: 给定一个整数数组,判断是否存在重复元素。 如果任何值在数组中出现至少两次,函数返回 true。如果数组中每...

  • LeetCode 217: 存在重复

    【记录性文章-数组】 代码思路:先排序,再用循环判断数组中相邻元素是否相同。

  • LeetCode 第 217、219、220 题:存在重复元素

    LeetCode 第 217 题:存在重复元素 传送门:217. 存在重复元素。 给定一个整数数组,判断是否存在重...

网友评论

    本文标题:Swift 存在重复 - LeetCode

    本文链接:https://www.haomeiwen.com/subject/kstncftx.html