在解這一題的開始,我先嘗試使用暴力解法,透過巢狀迴圈逐一比較每一個元素是否有重複。然而,這種方法的時間複雜度為 O(n²),當輸入陣列較大時,執行效能大幅下降,最終在提交時超出時間限制。
之後,我改採用 HashSet 的方式來優化程式。透過 HashSet 這個資料結構,我可以在 O(1) 的時間內檢查一個元素是否已經出現過。這樣不僅讓整體時間複雜度降低到 O(n),也讓程式碼更簡潔易懂。
在這次的嘗試中,我深刻體會到選對資料結構的重要性,也發現 HashSet 在處理需要快速查找、避免重複的場景時非常實用,未來會更加善用這類工具來提升程式效能。