Необходимо написать программу для сортировки элементов - C#
Формулировка задачи:
Необходимо написать программу, в которой методом быстрой сортировки нужно отсортировать прописные латинские буквы по возрастанию. (необходимо заполнить массив неупорядоченными данными, вывести неупорядоченные данные на экран, отсортировать массив, вывести упорядоченные данные на экран)
Решение задачи: «Необходимо написать программу для сортировки элементов»
textual
Листинг программы
class Program { static void Main(string[] args) { char[] m = {'z', 'b', 't', 'a', 'o'}; Console.Write("До сортировки: "); foreach (var item in m) { Console.Write(item + " "); } Console.WriteLine(); QSort(m, 0, m.Length - 1); Console.Write("После сортировки: "); foreach (var item in m) { Console.Write(item + " "); } } static void QSort<T>(T[] m, int l, int r) where T : IComparable<T> { if (l >= r) return; int p = Partition(m, l, r); QSort<T>(m, l, p - 1); QSort<T>(m, p + 1, r); } static int Partition<T>(T[] m, int l, int r) where T : IComparable<T> { int i = l; for (int j = l; j <= r; j++) { if (m[j].CompareTo(m[r]) <= 0) { T t = m[i]; m[i] = m[j]; m[j] = t; i++; } } return i - 1; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д