Leetcode 169. Majority Element (Easy) (cpp)
2016-07-12 12:02
399 查看
Leetcode 169. Majority Element (Easy) (cpp)
Tag: Array, Divede and Conquer, Bit Manipulation
Difficulty: Easy
Tag: Array, Divede and Conquer, Bit Manipulation
Difficulty: Easy
/* 169. Majority Element (Easy) 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. */ class Solution { public: int majorityElement(vector<int>& nums) { int majority; if (nums.size() == 1) { majority = nums[0]; } int cnt = 0; for (int i =0; i < nums.size(); i++) { if (cnt == 0) { majority = nums[i]; cnt++; } else { majority == nums[i] ? cnt++ : cnt--; if (cnt > nums.size() / 2) { return majority; } } } return majority; } };
相关文章推荐
- C++中的auto_ptr智能指针的作用及使用方法详解
- Leetcode 283. Move Zeroes (Easy) (cpp)
- Leetcode 81. Search in Rotated Sorted Array II (Medium) (cpp)
- Leetcode 219. Contains Duplicate II (Easy) (cpp)
- Leetcode 217. Contains Duplicate (Easy) (cpp)
- Leetcode 189. Rotate Array (Easy) (cpp)
- Leetcode 88. Merge Sorted Array (Easy) (cpp)
- Leetcode 33. Search in Rotated Sorted Array (Hard) (cpp)
- Leetcode 80. Remove Duplicates from Sorted Array II (Medium) (cpp)
- C++中的单例模式(懒汉、饿汉)
- BJOI2011 严格次小生成树 解题报告
- C++软件工程师,你该会什么?
- C++软件工程师,你该会什么?
- Leetcode 205. Isomorphic Strings (Easy) (cpp)
- Leetcode 118. Pascal's Triangle (Easy) (cpp)
- Leetcode 119. Pascal's Triangle II (Easy) (cpp)
- Leetcode 27. Remove Element (Easy) (cpp)
- C++11多线程系列第一部分
- C++ split 分割字符串
- C++ #pragma 用法小结