力扣169 多數元素

2021-10-03 20:21:02 字數 678 閱讀 7997

給定乙個大小為 n 的陣列,找到其中的多數元素。多數元素是指在陣列**現次數大於 ⌊ n/2 ⌋ 的元素。可以假設陣列不為空,並且一定存在多數元素:

示例:

示例 1:

輸入: [3,2,3]

輸出: 3

示例 2:

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

輸出: 2

解題思路:

如果乙個陣列中有有乙個數大於陣列元素的一半,那麼那這個數和其他的數挨個抵消,最後一定剩下的也是這個數;

**實現:

int

majorityelement

(int

* nums,

int numssize)

else}}

return num;

}

測試例項:

int

main()

;int numssize =3;

printf

("%d"

,majorityelement

(nums, numssize));

system

("pause");

return0;

}

多數元素(力扣169題)

題目 給定乙個大小為 n 的陣列,找到其中的多數元素。多數元素是指在陣列 現次數大於 n 2 的元素。你可以假設陣列是非空的,並且給定的陣列總是存在多數元素。分析 1 多數元素即在一組數 現次數大於 n 2 的元素 2 多數元素在這個陣列中一定存在 這兩個條件就決定了這種多數元素一定只可能是一種數,...

力扣169題 多數元素

leetcode刷題筆記 給定乙個大小為 n 的陣列,找到其中的多數元素。多數元素是指在陣列 現次數 大於 n 2 的元素。你可以假設陣列是非空的,並且給定的陣列總是存在多數元素。示例1輸入 3,2,3 輸出 3 示例2輸入 2,2,1,1,1,2,2 輸出 2 題目上說給定的陣列總是存在多數元素,...

力扣解題思路 169 多數元素

思路 給定乙個大小為 n 的陣列,找到其中的多數元素。多數元素是指在陣列 現次數大於 n 2 的元素。你可以假設陣列是非空的,並且給定的陣列總是存在多數元素。首先最直觀的方法就是先排序,最中間那個數出現次數一定多於 n 2。public intmajorityelement int nums 這種方...