LeetCode每日一題:重複 N 次的元素(No.961)

胖宅老鼠發表於2019-04-16

題目:重複 N 次的元素


在大小為 2N 的陣列 A 中有 N+1 個不同的元素,其中有一個元素重複了 N 次。
返回重複了 N 次的那個元素。
複製程式碼

示例:


輸入:[1,2,3,3]
輸出:3
輸入:[2,1,2,5,3,2]
輸出:2
輸入:[5,1,5,2,5,3,5,4]
輸出:5
複製程式碼

思考:


一共2N個元素,有N+1個不同的元素,有一個元素重複N次。說明該陣列中有且只有一個元素重複,就是要求的這個元素。
所以利用一個Map,尋找出現次數大於1次的元素即可。    
複製程式碼

實現:


class Solution {
    public int repeatedNTimes(int[] A) {
        Map<Integer, Integer> time = new HashMap<>();
        int count;
        for (count = 0; count < A.length; count++) {
            if (time.containsKey(A[count])) {
                break;
            } else {
                time.put(A[count], 0);
            }
        }
        return A[count];
    }
}複製程式碼

相關文章