คำชี้แจงปัญหา
ให้รายการอาร์เรย์ที่เรียงลำดับ 2 รายการ เขียนฟังก์ชันเพื่อรวมอาร์เรย์ที่จัดเรียงไว้สองอาร์เรย์เป็นหนึ่งเดียว
Arr1[] ={10,15, 17, 20}Arr2[] ={5, 9, 13, 19}ผลลัพธ์[] ={5, 9, 10, 13, 15, 17, 19, 20}
อัลกอริทึม
<ก่อน>1. สำรวจทั้งอาร์เรย์ 1.1 ถ้า arr1[i]ตัวอย่าง
#include#define SIZE(arr) (sizeof(arr) / sizeof(arr[0])) โดยใช้ namespace std;void mergeSortedArrays(int *arr1, int n1, int *arr2, int n2, int *ผลลัพธ์){ int i, j, k; ผม =0; เจ =0; k =0; ในขณะที่ (i ผลลัพธ์
เมื่อคุณคอมไพล์และรันโปรแกรมข้างต้น มันสร้างผลลัพธ์ต่อไปนี้ -
อาร์เรย์ที่จัดเรียงครั้งแรก:10 15 17 20 อาร์เรย์ที่จัดเรียงที่สอง:5 9 7 13 19 อาร์เรย์ที่จัดเรียงขั้นสุดท้าย:5 9 7 10 13 15 17 19 20