Question: You are given an array consisting of n numbers. A popular element is an element that occurs (strictly) more than n/2 times in the array.

You are given an array consisting of n numbers. A popular element is an element that occurs (strictly) more than n/2 times in the array. Give an algorithm that finds the popular element in the array if it exists, otherwise it should output "NO" Your algorithm should take no more than 2n comparisons. (As usual, we only count the comparisons between array elements.) Give pseudocode, argue its correctness, and show that your algorithm indeed takes no more than 2n comparisons. (Hint: Use a decrease and conquer strategy, similar to the celebrity problem.)
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
