題目解釋
每個 element 只能出現一次,若出現超過兩次就回傳 True
。
範例
- 輸入:
nums = [1, 2, 3, 1]
- 輸出:
True
因為 1
出現了兩次所以有 duplicate,回傳 True
。
最佳解法
只需要判定有沒有出現過,可以用 hash map
,但我覺得更適合用 set
還可以少存 value 值。
class Solution:
def containsDuplicate(self, nums: List[int]) -> bool:
appeared = set()
for n in nums:
if n not in appeared:
appeared.add(n)
else:
return True
return False
時間複雜度
O(n)
空間複雜度
O(n)
結語
面試時可以考我這個嗎 QQ
Latest posts by 數據女巫 𝔻.𝕡𝕪𝕤 🔮 (see all)
- [推薦工具] 讓程式碼截圖變的美美的吧!VScode CodeSnap 與 3 種同功能線上工具介紹 - 2025-01-05
- [AI 繪圖初級教學] 用 X/Y/Z Plot 比較 Stable Diffusion 的 prompt 與 LoRA 效果 - 2024-12-27
- [AI 繪圖中級篇教學] Stable Diffusion WebUI WD14 Tagger 介紹 - 2024-12-26