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.

Credits:
Special thanks to @ts for adding this problem and creating all test cases.

 解题思路:
散列

  1. class Solution {  
  2. public:  
  3.     int majorityElement(vector<int>& nums) {  
  4.         if(nums.size()==0) return 0;  
  5.           
  6.         unordered_map<int,int> order;  
  7.         for(int i=0;i<nums.size();i++){  
  8.             order[nums[i]]++;  
  9.             if(order[nums[i]]>nums.size()/2) return nums[i];     
  10.         }  
  11.           
  12.           
  13.     }  
  14. };  
posted @ 2018-04-13 00:30  一日一更  阅读(67)  评论(0编辑  收藏  举报