Упорядочить по убыванию неповторяющиеся элементы массивов, используя алгоритм выбора - C#
Формулировка задачи:
Вторая: Даны два одномерных массива A[n] и B[n]. Получить массив С[m] (n=<m=< 2n), элементы которого – упорядоченные по убыванию неповторяющиеся элементы данных массивов. Использовать алгоритм выбора
Решение задачи: «Упорядочить по убыванию неповторяющиеся элементы массивов, используя алгоритм выбора»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { public static void SelectionSort(ref int[] arr) { int min, temp; int length = arr.Length; for (int i = 0; i < length - 1; i++) { min = i; for (int j = i + 1; j < length; j++) { if (arr[j] < arr[min]) { min = j; } } if (min != i) { temp = arr[i]; arr[i] = arr[min]; arr[min] = temp; } } } static void Main(string[] args) { Console.Write("Введите n:"); int n = Convert.ToInt32(Console.ReadLine()); int[] A = new int[n]; int[] B = new int[n]; for (int i = 0; i < n; i++) { Console.Write("A[" + (i + 1) + "]="); A[i] = Convert.ToInt32(Console.ReadLine()); } for (int i = 0; i < n; i++) { Console.Write("B[" + (i + 1) + "]="); B[i] = Convert.ToInt32(Console.ReadLine()); } int[] C =new int[0]; for (int i = 0; i < n; i++) { bool flag = true; for (int j = 0; j < C.Length; j++) if (C[j] == A[i]) flag = false; if (flag) { Array.Resize(ref C,C.Length+1); C[C.Length - 1] = A[i]; } flag = true; for (int j = 0; j < C.Length; j++) if (C[j] == B[i]) flag = false; if (flag) { Array.Resize(ref C, C.Length + 1); C[C.Length - 1] = B[i]; } } SelectionSort(ref C); for (int i = 0; i < C.Length; i++) Console.Write(C[i] + " "); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д