0
点赞
收藏
分享

微信扫一扫

剑指offer39:数组中出现次数超过一半的数字

醉倾城1 2022-05-23 阅读 46


剑指offer39:数组中出现次数超过一半的数字_java

解法二

# -*- coding:utf-8 -*-
class Solution:
def MoreThanHalfNum_Solution(self, numbers):
# write code here
result,times = numbers[0],1
maxtime = 0
lens = len(numbers)
for i in range(1,lens):
if times == 0:
result = numbers[i]
times = 1
elif numbers[i] == result:
times = times+1
else:
times = times-1
for i in range(lens):
if numbers[i] == result:
maxtime = maxtime+1
if maxtime > lens/2:
return result
else:
return 0



举报

相关推荐

0 条评论