leetcode 217 存在重複元素

2021-10-10 11:08:11 字數 652 閱讀 6624

首先可以用set對列表進行去重

去重後將去重後列表長與原來列表長對比

若長度不同則說明去重過(原列表中有重複項)

if

len(nums)

!=len

(set

(nums)):

return

true

else

:return

false

還可以用雙指標法解決本題

首先進行原列表的排序

若兩個相鄰指標發現有相同的數字則返回true並break出列表

若沒有則兩個指標都加一

a =

0b =

1c =

len(nums)

if c ==

1or c ==0:

return

false

nums.sort(

)while b < c:

if nums[a]

== nums[b]

:return

true

break

else

: a +=

1 b +=

1return

false

LeetCode217 存在重複值

將陣列元素作為k鍵,對應下標作為v值存入雜湊表,當陣列中存在重複的元素的時候,存入雜湊表的時候會出現丟鍵的情況,因為雜湊表的k值是不允許重複的。所以說,將資料元素存入雜湊表後嗎,比較兩者的長度,如果長度一致,表示沒有重複元素,返回false,如果長度不一致,代表存在重複元素,返回true值 clas...

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 輸出 ...

LeetCode217 存在重複元素

題目 如果任何值在陣列 現至少兩次,函式返回 true。如果陣列中每個元素都不相同,則返回 false。class solution object def containsduplicate self,nums type nums list int rtype bool flag 0 if nums...