What is the best way to find the majority element in an array?

DSA
Medium
Infosys
129.1K views

The majority element appears more than half the time in an array. Finding it efficiently is a classic problem solved by Moore's Voting Algorithm.

Why Interviewers Ask This

This question tests knowledge of voting algorithms and frequency counting. Interviewers want to see if you can solve it in O(n) time and O(1) space. It also checks your ability to verify the candidate count after the initial pass.

How to Answer This Question

Start by explaining Moore's Voting Algorithm which maintains a candidate and a counter. Describe how to increment the counter for matching elements and decrement for mismatches. Explain what happens when the counter hits zero. Emphasize the need for a second pass to verify the candidate actually has the majority count.

Key Points to Cover

  • Moore's Voting Algorithm
  • Candidate and counter logic
  • Verification pass required
  • O(n) time, O(1) space

Sample Answer

I would use Moore's Voting Algorithm. I maintain a candidate variable and a counter. As I iterate, if the counter is zero, I pick the current element as the candidate. If the current element matches the candidate, I incr…

Common Mistakes to Avoid

  • Skipping the verification step
  • Assuming a majority always exists
  • Using a hash map unnecessarily

Sound confident on this question in 5 minutes

Answer once and get a 30-second AI critique of your structure, content, and delivery. First attempt is free — no signup needed.

Try it free

Related Interview Questions

Browse all 107 DSA questionsBrowse all 100 Infosys questions