Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

ค้นหาองค์ประกอบส่วนใหญ่ของอาร์เรย์ 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