169. Majority Element

来源:互联网 发布:视频后期制作 mac 编辑:程序博客网 时间:2024/06/06 18:30

题目

169. Majority Element

解题思路

这道题就是求众数,一开始我是用快排排序再返回nums[size/2],但是超时了~所以去discussion看了下大佬的代码,dalao的思路就是给数字投票,相同的投票数++,不同的投票数–,因为题目规定了众数的数量大于size/2,所以结果妥妥的是众数投票数最多。还有一种思路是用映射map,比较简单就不说了。

具体代码

class Solution {public:                 int majorityElement(vector<int>& nums) {        int count = 1;        int majority = nums[0];        for (int i = 1; i < nums.size(); i++) {            if (majority == nums[i])                ++count;            else if (count == 0) {                majority = nums[i];                ++count;            }            else {                --count;            }        }        return majority;    }};