Упорядочить по убыванию неповторяющиеся элементы массивов, используя алгоритм выбора - C#

Узнай цену своей работы

Формулировка задачи:

Вторая: Даны два одномерных массива A[n] и B[n]. Получить массив С[m] (n=<m=< 2n), элементы которого – упорядоченные по убыванию неповторяющиеся элементы данных массивов. Использовать алгоритм выбора

Решение задачи: «Упорядочить по убыванию неповторяющиеся элементы массивов, используя алгоритм выбора»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5.  
  6. namespace ConsoleApplication1
  7. {
  8.     class Program
  9.     {
  10.         public static void SelectionSort(ref int[] arr)
  11.         {
  12.             int min, temp;
  13.             int length = arr.Length;
  14.  
  15.             for (int i = 0; i < length - 1; i++)
  16.             {
  17.                 min = i;
  18.  
  19.                 for (int j = i + 1; j < length; j++)
  20.                 {
  21.                     if (arr[j] < arr[min])
  22.                     {
  23.                         min = j;
  24.                     }
  25.                 }
  26.  
  27.                 if (min != i)
  28.                 {
  29.                     temp = arr[i];
  30.                     arr[i] = arr[min];
  31.                     arr[min] = temp;
  32.                 }
  33.             }
  34.         }
  35.  
  36.         static void Main(string[] args)
  37.         {
  38.             Console.Write("Введите n:");
  39.             int n = Convert.ToInt32(Console.ReadLine());
  40.             int[] A = new int[n];
  41.             int[] B = new int[n];
  42.             for (int i = 0; i < n; i++) { Console.Write("A[" + (i + 1) + "]="); A[i] = Convert.ToInt32(Console.ReadLine()); }
  43.             for (int i = 0; i < n; i++) { Console.Write("B[" + (i + 1) + "]="); B[i] = Convert.ToInt32(Console.ReadLine()); }
  44.             int[] C =new int[0];
  45.             for (int i = 0; i < n; i++)
  46.             {
  47.                 bool flag = true;
  48.                 for (int j = 0; j < C.Length; j++)
  49.                     if (C[j] == A[i]) flag = false;
  50.                 if (flag) { Array.Resize(ref C,C.Length+1); C[C.Length - 1] = A[i]; }
  51.                 flag = true;
  52.                 for (int j = 0; j < C.Length; j++)
  53.                     if (C[j] == B[i]) flag = false;
  54.                 if (flag) { Array.Resize(ref C, C.Length + 1); C[C.Length - 1] = B[i]; }
  55.             }
  56.  
  57.             SelectionSort(ref C);
  58.  
  59.             for (int i = 0; i < C.Length; i++)
  60.                 Console.Write(C[i] + " ");
  61.         }
  62.     }
  63. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.917 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы