1. 程式人生 > 其它 >LeetCode-217-存在重複元素

LeetCode-217-存在重複元素

存在重複元素

題目描述:給定一個整數陣列,判斷是否存在重複元素。

如果存在一值在陣列中出現至少兩次,函式返回 true 。如果陣列中每個元素都不相同,則返回 false 。

示例說明請見LeetCode官網。

來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/contains-duplicate/
著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。

解法一:HashSet判重

利用HashSet判重,宣告一個HashSet變數notRepeatedNums,遍歷陣列nums,將每一位的數字用add()方法加到notRepeatedNums裡,如果返回false,說明這個數字已經存在,也就是存在重複元素,返回true;如果返回true,則會把當前數字加到notRepeatedNums裡,然後遍歷下一個數字。遍歷完成後,如果沒有重複數字,返回false。

import java.util.HashSet;
import java.util.Set;

public class LeetCode_217 {
    public static boolean containsDuplicate(int[] nums) {
        Set<Integer> notRepeatedNums = new HashSet<>();
        for (int num : nums) {
            if (!notRepeatedNums.add(num)) {
                return true;
            }
        }
        return false;
    }

    public static void main(String[] args) {
        int[] nums = new int[]{1, 2, 3, 1};
        System.out.println(containsDuplicate(nums));
    }
}

【每日寄語】 善良的人總是快樂!感恩的人總是富有!讓我們帶著感恩與善良,不忘初心,溫暖前行。