输入描述:
nums = [2,1,5,2,2,3,2]
输出描述:
2
思路
利用阵地攻守法解决,首先让第一个元素占领阵地,然后让剩余元素轮流进攻,当两个元素相同时,计数器加一;元素不同时,同归于尽 计数器减一 让下一个元素占守阵地
代码实现
def moreovernums(nums):
master = nums[0]
count = 1
for i in range(1,len(nums)):
if count == 0:
master = nums[i]
count = 1
elif nums[i] == master:
count += 1
else:
count -= 1
return master

京公网安备 11010502036488号