給定一個(gè)大小為 n 的數(shù)組,找到其中的眾數(shù)。眾數(shù)是指在數(shù)組中出現(xiàn)次數(shù)大于 ? n/2 ? 的元素。
你可以假設(shè)數(shù)組是非空的艰躺,并且給定的數(shù)組總是存在眾數(shù)。
示例 1:
輸入: [3,2,3]
輸出: 3
示例 2:
輸入: [2,2,1,1,1,2,2]
輸出: 2
解:使用摩爾投票法眨八,該算法只適用于必然有眾數(shù)的情況
以第一個(gè)數(shù)為眾數(shù)腺兴,依次遍歷數(shù)組,當(dāng)數(shù)字相同則投票計(jì)數(shù)加1廉侧,不同則投票計(jì)數(shù)減1页响,計(jì)數(shù)為0時(shí)篓足,則使用下一個(gè)數(shù)為眾數(shù)。