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