您的位置:首页 > 其它

leetcode 169

2016-05-03 14:46 302 查看
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.

1、常规快排
class Solution {
public:
int majorityElement(vector<int>& nums) {
sort(nums.begin(),nums.end());
return nums[nums.size()/2];
}
};
2、O(n)
class Solution {
public:
int majorityElement(vector<int>& nums) {
int k=0;
int temp;
for(int i=0;i<nums.size();++i){
if(k==0){
temp=nums[i];
k=1;
}
else if(nums[i]==temp){
k++;
}
else
k--;

}
return temp;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  leetcode