องค์ประกอบหลัก:
องค์ประกอบส่วนใหญ่ในอาร์เรย์ arr ของความยาว l เป็นองค์ประกอบที่ปรากฏมากกว่า l/2 ครั้ง ดังนั้นจึงมีองค์ประกอบดังกล่าวได้ไม่เกินหนึ่งองค์ประกอบ
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript เช่น isMajority() ที่รับอาร์เรย์ arr ซึ่งจะถูกจัดเรียงตามลำดับที่เพิ่มขึ้นเสมอเป็นอาร์กิวเมนต์แรก
อาร์กิวเมนต์ที่สองของฟังก์ชันจะเป็นตัวเลข ซึ่งเราจะค้นหาอาร์เรย์และคืนค่า จริง หากตัวเลขนั้นเป็นองค์ประกอบส่วนใหญ่หรือเป็นเท็จ
ตัวอย่างเช่น −
หากอาร์เรย์อินพุตและตัวเลขเป็น −
const arr = [5, 5, 5, 12, 15]; const num = 5;
จากนั้นผลลัพธ์ควรเป็น −
const output = true;
เพราะ 5 ปรากฏขึ้น 3 ครั้งซึ่งมากกว่า (5 / 2) =2.5 (ครึ่งหนึ่งของความยาวของอาร์เรย์)
กำหนดให้อาร์เรย์ถูกจัดเรียงและหากมีองค์ประกอบส่วนใหญ่อยู่ มันจะเป็นองค์ประกอบกลางเสมอเพราะตัวเลขนั้นจะต้องครอบคลุมอย่างน้อยมากกว่าครึ่งหนึ่งของอาร์เรย์
เราสามารถใช้ตรรกะนี้ตรวจสอบว่าตัวเลขที่กำหนดเป็นองค์ประกอบส่วนใหญ่หรือไม่
ตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const arr = [5, 5, 5, 12, 15]; const num = 5; const isMajority = (arr = [], num = 1) => { const { length } = arr; if(!length){ return false; }; const middle = Math.floor(length / 2); if(arr[middle] === num){ return true; }else{ return false; }; }; console.log(isMajority(arr, num));
ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
true