Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

การจับคู่สมาชิก ראשוןและสุดท้ายของอาร์เรย์ - JavaScript

ฟังก์ชันนี้สร้างอาร์เรย์ของคู่ (pairs) โดยจับคู่สมาชิกตัวแรกกับตัวสุดท้าย ตัวที่สองกับตัวลำดับสองจากท้าย ไปเรื่อยๆ

ตัวอย่าง

// Input: [1, 2, 3, 4, 5, 6]
// Output: [[1, 6], [2, 5], [3, 4]]

ตัวอย่างโค้ด

const arr = [1, 2, 3, 4, 5, 6];

const edgePairs = arr => {
  const res = [];
  const upto = arr.length % 2 === 0 ? arr.length / 2 : Math.floor(arr.length / 2);

  for (let i = 0; i < upto; i++) {
    res.push([arr[i], arr[arr.length - 1 - i]]);
  }

  // ถ้าความยาวคี่ เพิ่มสมาชิกกลางเข้าไป
  if (arr.length % 2 !== 0) {
    res.push([arr[Math.floor(arr.length / 2)]]);
  }

  return res;
};

console.log(edgePairs(arr));

การทำงาน

  • วนลูปครึ่งหนึ่งของอาร์เรย์
  • จับคู่ arr[i] กับ arr[length-1-i]
  • ถ้าความยาวคี่ เพิ่มสมาชิกกลางเป็นคู่เดี่ยว

ผลลัพธ์

[ [ 1, 6 ], [ 2, 5 ], [ 3, 4 ] ]