961. N-Repeated Element in Size 2N Array

Posted xxinn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了961. N-Repeated Element in Size 2N Array相关的知识,希望对你有一定的参考价值。

【题目】

In a array A of size 2N, there are N+1unique elements, and exactly one of these elements is repeated N times.

Return the element repeated N times.

 

Example 1:

Input: [1,2,3,3]
Output: 3

Example 2:

Input: [2,1,2,5,3,2]
Output: 2

Example 3:

Input: [5,1,5,2,5,3,5,4]
Output: 5

 

Note:

  1. 4 <= A.length <= 10000
  2. 0 <= A[i] < 10000
  3. A.length is even

【题意】

数组A中一共有2N个元素,其中一个元素重复了N次,其他元素都是唯一的。返回重复的元素。

【解答】

1:对原数组直接排序。时间O(nlogn)。

class Solution {
public:
    int repeatedNTimes(vector<int>& A) {
        int len = A.size();
        sort(A.begin(), A.end());
        for(int i=0; i+1<len; i++){
            if(A[i+1] == A[i]) return A[i];
        }
        return -1;
    }
};

2:遍历数组,对每一个元素判断是否前面已经出现过。因为有一半都是重复的元素,所以效率比较高。

class Solution {
public:
    int repeatedNTimes(vector<int>& A) {
        int len = A.size();
        for(int i=1; i<len; i++){
            for(int j=0; j<i; j++){
                if(A[i] == A[j]) return A[i];
            }
        }
        return -1;
    }
};

 

以上是关于961. N-Repeated Element in Size 2N Array的主要内容,如果未能解决你的问题,请参考以下文章

961. N-Repeated Element in Size 2N Array

LeetCode 961. N-Repeated Element in Size 2N Array

Leetcode 961. N-Repeated Element in Size 2N Array

Leetcode 961. N-Repeated Element in Size 2N Array

[Leetcode]961. N-Repeated Element in Size 2N Array

leetcode961. N-Repeated Element in Size 2N Array