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

การรวมสองอาร์เรย์ที่ไม่เรียงลำดับในลำดับที่เรียงลำดับใน C ++


คำชี้แจงปัญหา

เขียนฟังก์ชันที่นำอาร์เรย์ที่ไม่ได้เรียงลำดับสองชุดมารวมกันเป็นอาร์เรย์ใหม่ตามลำดับ

arr1[] ={10, 5, 7, 2}arr2[] ={4, 17, 9, 3}ผลลัพธ์[] ={2, 3, 4, 5, 7, 9, 10, 17} 

อัลกอริทึม

<ก่อน>1. รวมสองอาร์เรย์ที่ไม่ได้เรียงลำดับเข้ากับอาร์เรย์ใหม่ 2 จัดเรียงอาร์เรย์ที่สร้างใหม่

ตัวอย่าง

#include #include #define SIZE(arr) (sizeof(arr) / sizeof(arr[0])) โดยใช้เนมสเปซ std;void mergeAndSort(int *arr1, int n1, int *arr2 , int n2, int *ผลลัพธ์){ ผสาน (arr1, arr1 + n1, arr2, arr2 + n2, ผลลัพธ์); sort(ผลลัพธ์, ผลลัพธ์ + n1 + n2);}void displayArray(int *arr, int n){ สำหรับ (int i =0; i  

ผลลัพธ์

เมื่อคุณคอมไพล์และรันโปรแกรมข้างต้น มันสร้างผลลัพธ์ต่อไปนี้ -

อาร์เรย์แรก:10 5 7 2อาร์เรย์ที่สอง:10 5 7 2ผสานและจัดเรียงอาร์เรย์:2 3 4 5 7 9 10 17