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

การรวมอาร์เรย์ที่เรียงลำดับเข้าด้วยกัน JavaScript


สมมติว่าเรามีอาร์เรย์ที่เรียงกันสองชุด (ลำดับที่เพิ่มขึ้น) แบบนี้ -

const arr1 = [1, 2, 3, 0, 0, 0];
const arr2 = [2, 5, 6];

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้อาร์เรย์ดังกล่าวสองอาร์เรย์และส่งกลับอาร์เรย์ใหม่ที่มีองค์ประกอบทั้งหมดจากอาร์เรย์เหล่านี้ในลักษณะที่เรียงลำดับ

ดังนั้น สำหรับอาร์เรย์ข้างต้น ผลลัพธ์ควรมีลักษณะดังนี้ −

const output = [1, 2, 2, 3, 5, 6];

ตัวอย่าง

const arr1 = [1, 2, 3, 0, 0, 0];
const arr2 = [2, 5, 6];
const mergeSortedArrays = (arr1, arr2) => {
   let { length: l1 } = arr1;
   let { length: l2 } = arr2;
   while(l2){
      arr1[l1++] = arr2[--l2];
   };
   const sorter = (a, b) => a - b;
   arr1.sort(sorter);
};
mergeSortedArrays(arr1, arr2);
console.log(arr1);

ผลลัพธ์

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

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