五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Leetcode Day14 4

2022-04-18 20:48 作者:我喜歡喝一點點  | 我要投稿

劍指 Offer 39. 數(shù)組中出現(xiàn)次數(shù)超過一半的數(shù)字

數(shù)組中有一個數(shù)字出現(xiàn)的次數(shù)超過數(shù)組長度的一半,請找出這個數(shù)字。


?


你可以假設(shè)數(shù)組是非空的,并且給定的數(shù)組總是存在多數(shù)元素。


?


示例 1:


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

輸出: 2


我是用的字典存放的,速度比較慢。

之前也試過排序,但是有點寄。。

class?Solution:

????def?majorityElement(self,?nums:?List[int])?->?int:

????????if?not?nums:return?None

????????dict={}

????????totallen=len(nums)

????????for?i?in?range(totallen):

????????????if?not?nums[i]?in?dict:

????????????????dict[nums[i]]=1

????????????????if?dict[nums[i]]>(totallen//2):

????????????????????return?nums[i]

????????????else:

????????????????dict[nums[i]]+=1

????????????????if?dict[nums[i]]>(totallen//2):

????????????????????return?nums[i]

????????return?-1



然后用字典排序的話會快一點(返回第一個key搜了好久,嗚嗚嗚我好菜啊,原來只要當(dāng)成二維數(shù)組就行了)

然后dict的排序的話麻煩一點,用lambda表達(dá)式限定條件

x[1]表示按照value值排序,reverse表示從大帶小排序。

看了看題解,還有摩爾排序法,搬過來~

若記?眾數(shù)?的票數(shù)為?+1?,非眾數(shù)?的票數(shù)為??1?,則一定有所有數(shù)字的?票數(shù)和?>0?。


class Solution:

? ? def majorityElement(self, nums: List[int]) -> int:

? ? ? ? votes = 0

? ? ? ? for num in nums:

? ? ? ? ? ? if votes == 0: x = num

? ? ? ? ? ? votes += 1 if num == x else -1

? ? ? ? return x



Leetcode Day14 4的評論 (共 條)

分享到微博請遵守國家法律
高安市| 米泉市| 宝清县| 绍兴市| 清原| 葫芦岛市| 黄龙县| 葵青区| 个旧市| 赤水市| 永城市| 米林县| 平武县| 安化县| 永修县| 开封市| 翼城县| 蓬莱市| 遂平县| 新沂市| 阜宁县| 灵丘县| 泸西县| 深水埗区| 吉隆县| 武宣县| 宿州市| 木兰县| 凉城县| 玉溪市| 诸暨市| 三明市| 河津市| 张家界市| 抚松县| 简阳市| 巴林右旗| 祁东县| 哈密市| 宜城市| 云龙县|