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

การเรียงลำดับและค้นหาผลรวมของความแตกต่างสำหรับอาร์เรย์โดยใช้ JavaScript


ปัญหา

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของจำนวนเต็ม ฟังก์ชันของเราควรรวมผลต่างระหว่างคู่ที่ต่อเนื่องกันในอาร์เรย์โดยเรียงลำดับจากมากไปหาน้อย

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

[6, 2, 15]

จากนั้นผลลัพธ์ควรเป็น −

(15 - 6) + (6 - 2) = 13

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

const arr = [6, 2, 15];
const sumDifference = (arr = []) => {
   const descArr = arr.sort((a, b) => b - a);
   if (descArr.length <= 1) {
      return 0;
   }
   let total = 0;
   for (let i = 0; i < descArr.length - 1; i++) {
      total += (descArr[i] - descArr[i + 1]);
   }
   return total;
};
console.log(sumDifference(arr));

ผลลัพธ์

13