溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python怎么判斷一個(gè)整數(shù)數(shù)組是否存在重復(fù)元素

發(fā)布時(shí)間:2021-12-21 10:44:55 來(lái)源:億速云 閱讀:1238 作者:iii 欄目:編程語(yǔ)言

本篇內(nèi)容主要講解“Python怎么判斷一個(gè)整數(shù)數(shù)組是否存在重復(fù)元素”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“Python怎么判斷一個(gè)整數(shù)數(shù)組是否存在重復(fù)元素”吧!

問(wèn)題:給定一個(gè)整數(shù)數(shù)組,你如何判斷是否存在重復(fù)元素。

如果任何值在數(shù)組中出現(xiàn)至少兩次,函數(shù)返回 true。如果數(shù)組中每個(gè)元素都不相同,則返回 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

解題思路:

排序數(shù)組,連續(xù)兩個(gè)數(shù)相等則證明存在重復(fù)元素。

直接用哈希集合:新建一個(gè)哈希集合,逐個(gè)向集合內(nèi)添加元素,如果遇到元素未添加成功,則證明存在重復(fù)元素,返回 True ,反之返回 False。

代碼:

這里用的哈希集合解題

Java:

class Solution {
 public boolean containsDuplicate(int[] nums) {
 Set<Integer> set = new LinkedHashSet<>();
 for (int num : nums) {
 if (!set.add(num)) return true; //加入集合未成功,證明集合內(nèi)已有一個(gè)相同元素,返回False
 }
 return false;
 }
}

Python:

Python中 set() 函數(shù)可以直接將數(shù)組轉(zhuǎn)化為哈希集合。直接比較轉(zhuǎn)化后的哈希集合長(zhǎng)度與原數(shù)組長(zhǎng)度是否相等,相等證明原數(shù)組無(wú)重復(fù)元素,不相等則證明原數(shù)組含有重復(fù)元素。

class Solution:
 def containsDuplicate(self, nums: List[int]) -> bool:
 return len(nums) != len(set(nums)) #比較長(zhǎng)度

到此,相信大家對(duì)“Python怎么判斷一個(gè)整數(shù)數(shù)組是否存在重復(fù)元素”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI