Để gộp hai mảng đã sắp xếp trong C#, bạn cần chuẩn bị hai mảng nguồn và một mảng đích đủ lớn để chứa kết quả.
Ví dụ minh họa
using System;
class Program
{
static void Main()
{
int[] arr1 = { 5, 15, 25, 30, 47 };
int[] arr2 = { 55, 60, 76, 83, 95 };
int[] merged = new int[10];
int j = 0;
// Sao chép mảng đầu tiên
for (int i = 0; i < arr1.Length; i++)
{
merged[j++] = arr1[i];
}
// Sao chép mảng thứ hai
for (int i = 0; i < arr2.Length; i++)
{
merged[j++] = arr2[i];
}
Console.WriteLine("Các phần tử của mảng đã gộp:");
for (int i = 0; i < merged.Length; i++)
{
Console.WriteLine($"merged[{i}]: {merged[i]}");
}
}
}
Kết quả đầu ra
Các phần tử của mảng đã gộp: merged[0]: 5 merged[1]: 15 merged[2]: 25 merged[3]: 30 merged[4]: 47 merged[5]: 55 merged[6]: 60 merged[7]: 76 merged[8]: 83 merged[9]: 95
Lưu ý: Code trên chỉ đơn giản nối hai mảng. Nếu cần gộp và sắp xếp hai mảng đã sắp xếp (merge sort style), hãy dùng thuật toán hai con trỏ để duyệt song song hai mảng.