JavaScript 中找出陣列中的多數元素


我們獲得了一個大小為 n 的陣列,需要找到眾數元素。眾數元素是出現次數超過 [ n/2 ] 的元素。

示例

const arr = [2, 4, 2, 2, 2, 4, 6, 2, 5, 2];
const majorityElement = (arr = []) => {
   const threshold = Math.floor(arr.length / 2);
   const map = {};
   for (let i = 0; i < arr.length; i++) {
      const value = arr[i];
      map[value] = map[value] + 1 || 1;
      if (map[value] > threshold)
         return value
   };
   return false;
};
console.log(majorityElement(arr));

輸出

控制檯中的輸出將為 −

2

更新於: 21-Nov-2020

740 次瀏覽

開啟您的 職業

完成課程獲得認證

開始學習
廣告