Checking whether at least n/2 + 1 elements of a set/vector are equal
I think there is an even better approach to your problem: 


The element you are looking for will also be the median of the list. Find the median of the list using the Median of Medians algorithm. $O(n)$ complexity
Check if the median appears at least $n/2 + 1$ times on the list $O(n)$ complexity


So, the algorithm you're looking for runs in linear time.