Skip to content

Latest commit

 

History

History

majority-element

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

Majority Element

LeetCode #: 169

Difficulty: Easy

Topics: Array, Divide and Conquer, Bit Manipulation.

Problem

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.

Example 1:

Input: [3,2,3]
Output: 3

Example 2:

Input: [2,2,1,1,1,2,2]
Output: 2

Solution Explanation

The solution uses the Boyer–Moore majority vote algorithm. We iterate through each element once, and we use two variables to keep track of count and element. Since it is guaranteed that the majority element alway exist in the array, at the end of the for loop, the element will always be the majority element.

Complexity Analysis

Time complexity: O(n)

Space complexity: O(1)