169 多數元素

2021-10-02 09:12:44 字數 552 閱讀 5326

解題思路:

1.將陣列從小到大排序

2.第nums.length/2處的元素就是我們要求的元素,直接返回nums[nums.length/2]即可

**實現:

class solution 

}

解題思路:

1.變數val,初始值為nums[0],記錄當前的值,計數器cnt,記錄當前元素累計出現的情況,初始值為1

2.遍歷陣列,當val==nums[i]時,表示當前元素再次出現,cnt++;

3.當val!=nums[i]時,表示當前元素未再次出現,cnt--;

4.當cnt<0時,重新開始賦值,並重新計數,即val=nums[i];cnt=1;

5.遍歷到最後,只有出現nums.length/2的元素是cnt>0的情況,其他元素都被抵消,直接返回val即可

**實現:

class solution 

else

if(cnt<0)

}return val;

}}

169 多數元素

給定乙個大小為 n 的陣列,找到其中的多數元素。多數元素是指在陣列 現次數大於 n 2 的元素。你可以假設陣列是非空的,並且給定的陣列總是存在多數元素。示例 1 輸入 3,2,3 輸出 3 示例 2 輸入 2,2,1,1,1,2,2 輸出 2 分析 解法一 我們可以先排序,然後輸出在陣列 現次數大於...

169 多數元素

題目描述 給定乙個大小為 n 的陣列,找到其中的多數元素。多數元素是指在陣列 現次數大於 n 2 的元素。你可以假設陣列是非空的,並且給定的陣列總是存在多數元素。示例 1 輸入 3,2,3 輸出 3 示例 2 輸入 2,2,1,1,1,2,2 輸出 2 方法1 直接使用unordered map進行...

169 多數元素

摩爾投票法思路 候選人 cand num 初始化為nums 0 票數count初始化為1。當遇到與cand num相同的數,則票數count count 1,否則票數count count 1。當票數count為0時,更換候選人,並將票數count重置為1。遍歷完陣列後,cand num即為最終答案...