- Notifications
You must be signed in to change notification settings - Fork 0
[leetcode]169.多数元素 #36
Copy link
Copy link
Open
Labels
documentationImprovements or additions to documentationImprovements or additions to documentation
Description
Metadata
Metadata
Assignees
Labels
documentationImprovements or additions to documentationImprovements or additions to documentation
给定一个大小为n的数组,找到其中的多数元素,多数元素是指在数组中出现次数 大于 [n/2]的元素。
你可以假设数组是非空的,并且给定的数组总是存在多数元素。
示例 1:
示例 2:
进阶:
方法一: 哈希表
思路:
我们知道出现次数最多的元素大于 [n/2]次,所以可以使用哈希表来快速统计每个元素出现的次数。
算法:
我们使用哈希映射来存储每个元素以及出现的次数,对于哈希表中的每个键值对,键表示一个元素,值表示该元素出现的次数。
我们用一个循环遍历数组nums,并将数组中的每个元素加入hash映射中,在这之后,我们遍历哈希映射中的所有键值对,返回最大值的键,我们同样也可以在遍历数组nums时候用打擂台的方法,维护最大的值,这样省去了最后对hash映射的遍历。
复杂度: