Leetcode 961 重複N次元素

2021-09-11 18:45:45 字數 726 閱讀 5321

在大小為2n的陣列a中有n+1個不同的元素,其中乙個元素重複了n次。返回重複了n次的那個元素。

示例1

輸入:[1,2,3,3]

輸出:3

示例2

輸入:[2,1,2,5,3,2]

輸出:2

示例3

輸入:[5,1,5,2,5,3,5,4]

輸出:5

本題最容易想到是對原始序列進行排序,然後通過判斷中間位置元素是否與最後乙個元素相等判斷重複出現n次的元素。時間複雜度是o(nlogn)。雖然本題可以通過,但是在面試中很有可能被問到能否在o(n)時間複雜度內完成。考慮數字的排序情況,例如示例3:可以看成先放好 1,2,3,4 ,然後相當於在5個空格中插入4個5,所有可能出現的情況可以分為三類:出現兩個5相鄰;沒有相鄰的情況,但是第乙個位置和第三個位置元素相等,或第乙個位置和最後位置相等;重複的元素全部出現在偶數字置上。

o(nlogn):

int repeatedntimes(vector& a)
o(n):

int repeatedntimes(vector& a) 

if(a[0] == a[2] || a[0] == a[a.size()-1]) return a[0];

return a[1];

}

LeetCode 961 重複N次的元素

在大小為2n的陣列a中有n 1個不同的元素,其中有乙個元素重複了n次。返回重複了n次的那個元素。示例 1 輸入 1,2,3,3 輸出 3 示例 2 輸入 2,1,2,5,3,2 輸出 2 示例 3 輸入 5,1,5,2,5,3,5,4 輸出 5 4 a.length 100000 a i 10000...

961 重複 N 次的元素

在大小為 2n 的陣列 a 中有 n 1 個不同的元素,其中有乙個元素重複了 n 次。返回重複了 n 次的那個元素。示例 1 輸入 1,2,3,3 輸出 3 示例 2 輸入 2,1,2,5,3,2 輸出 2 示例 3 輸入 5,1,5,2,5,3,5,4 輸出 5 4 a.length 10000 ...

961 重複 N 次的元素

weekly contest 116的 重複 n 次的元素 在大小為2n的陣列a中有n 1個不同的元素,其中有乙個元素重複了n次。返回重複了n次的那個元素。示例1 輸入 1,2,3,3 輸出 3示例2 輸入 2,1,2,5,3,2 輸出 2示例3 輸入 5,1,5,2,5,3,5,4 輸出 5 4 ...