Слияние двух массивов отсортированных по убыванию - C#
Формулировка задачи:
Нужно написать прогу:
Даны два массива. Массив А состоит из N элементов , массив В состоит из М элементов. Оба массива отсортированы по убыванию. Разработать программу для слияния этих массивов в отсортированный по неубыванию массив С.
Заранее спасибо
Решение задачи: «Слияние двух массивов отсортированных по убыванию»
textual
Листинг программы
using System; namespace MergeArrays { public class MergeArrays { public static int[] Merge (int[] arrA, int[] arrB) { int posA = arrA.Length - 1, posB = arrB.Length - 1, posC = 0; int[] arrC = new int[arrA.Length + arrB.Length]; while (posA >= 0) { if (posB >= 0) { if (arrA [posA] < arrB [posB]) arrC [posC++] = arrA [posA--]; else if (arrB [posB] < arrA [posA]) arrC [posC++] = arrB [posB--]; else { arrC [posC++] = arrA [posA--]; arrC [posC++] = arrB [posB--]; } } else arrC [posC++] = arrA [posA--]; } while (posB >= 0) arrC [posC++] = arrB [posB--]; return arrC; } public static void Main() { int[] a = { 10, 8, 7, 6, 5, 2, 1 }; int[] b = { 9, 7, 6, 3, 1, 0 }; int[] c = Merge(a, b); foreach (int n in c) Console.Write(n + " "); Console.WriteLine(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д