Skip to content

Latest commit

 

History

History

169-MajorityElement

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

Majority Element

Problem can be found in here!

Basic Solution: Brute Force

def majorityElement(nums: List[int]) -> int:
    for i in range(len(nums)):
        counter = sum(1 for number in nums if number == nums[i])
        if counter > len(nums) // 2:
            return nums[i]

Time Complexity: O(n^2), Space Complexity: O(1)

Improved Solution: Hash Table

def majorityElement(nums: List[int]) -> int:
    memo = {}
    threshold = len(nums) // 2
    for number in nums:
        try:
            memo[number] += 1
        except KeyError:
            memo[number] = 1

        if memo[number] > threshold:
                return number

Time Complexity: O(n), Space Complexity: O(n)