這個演算法是找一串數字中的眾數,特色是只需要一個計數器可以做到空間複雜度為 O(1) 的計算,被抵銷掉則視為隨機出現的亂數

var majorityElement = function(nums) {
    let candidate = null;
    let count = 0;
 
    for (let num of nums) {
        // 如果當前沒有候選人,就選當前數字當候選人
        if (count === 0) {
            candidate = num;
        }
 
        // 如果跟候選人一樣,戰力 +1;不一樣,戰力 -1(同歸於盡)
        count += (num === candidate) ? 1 : -1;
    }
 
    return candidate;
};