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

ดึงองค์ประกอบขั้นต่ำที่สองจากอาร์เรย์โดยไม่ต้องเรียงลำดับ JavaScript


เรามีอาร์เรย์ของ Numbers และเราจำเป็นต้องเขียนฟังก์ชันที่คืนค่าที่น้อยที่สุดเป็นอันดับสองจากอาร์เรย์

ตัวอย่างเช่น − หากอาร์เรย์เป็น −

const arr = [67, 87, 56, 8, 56, 78, 54, 67, 98, 56, 54];

ผลลัพธ์ควรเป็นดังนี้ −

54

เพราะ 54 เป็นค่าที่น้อยที่สุดหลังจาก 8

ตัวอย่าง

const arr = [67, 87, 56, 8, 56, 78, 54, 67, 98, 56, 54];
const minimumIndex = arr => {
   return arr.indexOf(Math.min(...arr));
};
const secondMinimum = arr => {
   const copy = arr.slice();
   copy.splice(minimumIndex(copy), 1);
   return copy[minimumIndex(copy)];
};
console.log(secondMinimum(arr));

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็น -

54