2019-03-10-算法-进化(存在重复)
生活随笔
收集整理的這篇文章主要介紹了
2019-03-10-算法-进化(存在重复)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給定一個整數數組,判斷是否存在重復元素。
如果任何值在數組中出現至少兩次,函數返回 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思路如下:
思路1的實現如下,時間復雜度O(n),空間復雜度O(n)
public boolean containsDuplicate(int[] nums) {if(nums == null || nums.length<=1) {return false;}Set<Integer> set = new HashSet<Integer>();for(int i=0;i<nums.length;i++) {set.add(nums[i]);}return set.size() != nums.length;}思路2的實現如下,時間復雜度O(nlog(n)),空間復雜度O(1)
public boolean containsDuplicate(int[] nums) {if(nums == null || nums.length<=1) {return false;}Arrays.sort(nums);for(int i=0;i<nums.length-1;i++) {if(nums[i] == nums[i+1]) {return true;}}return false;} 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的2019-03-10-算法-进化(存在重复)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2019-03-09-算法-进化(旋转数
- 下一篇: 荣耀猎人游戏本评测荣耀猎人游戏本值得入手