class Solution {
public:
int moreThanHalfNum_Solution(vector<int>& nums) {
//自己yy的,要一个栈的空间复杂的
stack<int>s;
for(int &c:nums){
if(!s.size()||c==s.top())s.push(c);
else s.pop();
}
return s.top();
}
//大佬优化,o(1)空间复杂度
int cnt = 0, val;
for (auto x: nums)
{
if(!cnt) val = x, cnt ++; //如果集合为空就加入
else if(x == val) cnt ++; //如果相等就加入
else cnt --; //如果不相等就消掉一个数
}
};