Leetcode problem-169 Majority Element 题解
Posted 北冥有鱼,南冥有猫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode problem-169 Majority Element 题解相关的知识,希望对你有一定的参考价值。
Leetcode Problem-169 Majority Element
Given an array of size n, find the majority element. The majority element is the element that appears more than?
n/2
?
times.
You may assume that the array is non-empty and the majority element always exist in the array.
题解:题目已经肯定主元素一定存在,且出现次数大于n/2,数组又假定已经非空。采用分治法,每找到两个不同的元素,则成对删除,最终剩下的一定就是所求的。
class Solution { public: int majorityElement(vector<int>& nums) { int most = 0; int cnt = 0; for(int i=0;i<nums.size();i++) { if(cnt==0) { most=nums[i]; cnt++; } else { if(nums[i]==most) { cnt++; } else { cnt--; } }
} return most; } }; |
以上是关于Leetcode problem-169 Majority Element 题解的主要内容,如果未能解决你的问题,请参考以下文章