原始思路:字典
参考答案思路:投票算法
背后原理简单的理解是 如果你要当选,支持你的人至少要超过半数
和题目的定义:The majority element is the element that appears more than ⌊ n/2 ⌋ times 一致
我的后续思路:做一个栈,如果读到的数字和栈顶的数字不一样,意思是这个人是个反对党的,然后栈顶数字出列,代表他们两个抵消了;如果读到的数字和栈顶数字一样,入栈,代表相同势力
最后还在栈里的人就是答案
参考答案的解决方案没用栈,直接比较
用了两个参数,一个是势力数,另一个是候选人
如果读到的数字和候选人一个势力,势力数+1
否则势力数减1
如果势力数为0,代表没有候选人都gg了,最新读到的数就变成候选人