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+1
unique 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:
4 <= A.length <= 10000
0 <= A[i] < 10000
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