存在重復(fù)元素
題目描述:給定一個整數(shù)數(shù)組球榆,判斷是否存在重復(fù)元素随抠。
如果存在一值在數(shù)組中出現(xiàn)至少兩次,函數(shù)返回 true 荸型。如果數(shù)組中每個元素都不相同盹靴,則返回 false 。
示例說明請見LeetCode官網(wǎng)瑞妇。
來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/contains-duplicate/
著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有稿静。商業(yè)轉(zhuǎn)載請聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請注明出處辕狰。
解法一:HashSet判重
利用HashSet判重改备,聲明一個HashSet變量notRepeatedNums,遍歷數(shù)組nums蔓倍,將每一位的數(shù)字用
add()
方法加到notRepeatedNums里悬钳,如果返回false,說明這個數(shù)字已經(jīng)存在偶翅,也就是存在重復(fù)元素默勾,返回true;如果返回true聚谁,則會把當(dāng)前數(shù)字加到notRepeatedNums里母剥,然后遍歷下一個數(shù)字。遍歷完成后垦巴,如果沒有重復(fù)數(shù)字媳搪,返回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));
}
}
【每日寄語】 善良的人總是快樂骤宣!感恩的人總是富有秦爆!讓我們帶著感恩與善良,不忘初心憔披,溫暖前行等限。