Алгоритм быстрой сортировки - C# (192129)

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

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

Добрый день. Скиньте пожалуйста готовый код программы быстрой сортировки у кого есть.

Решение задачи: «Алгоритм быстрой сортировки»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5.  
  6. namespace Sort
  7. {
  8.     class Program
  9.     {
  10.         static void quickSort(int[] a, int l, int r)
  11.         {
  12.             int temp;
  13.             int x = a[l + (r - l) / 2];
  14.             //запись эквивалентна (l+r)/2,
  15.             //но не вызввает переполнения на больших данных
  16.             int i = l;
  17.             int j = r;
  18.             //код в while обычно выносят в процедуру particle
  19.             while (i <= j)
  20.             {
  21.                 while (a[i] < x) i++;
  22.                 while (a[j] > x) j--;
  23.                 if (i <= j)
  24.                 {
  25.                     temp = a[i];
  26.                     a[i] = a[j];
  27.                     a[j] = temp;
  28.                     i++;
  29.                     j--;
  30.                 }
  31.             }
  32.             if (i < r)
  33.                 quickSort(a, i, r);
  34.  
  35.             if (l < j)
  36.                 quickSort(a, l, j);
  37.         }
  38.         static void Main()
  39.         {
  40.             // Считываем размер массива,
  41.             // который необходимо отсортировать
  42.             int size;
  43.             size = Convert.ToInt32(Console.ReadLine());
  44.             // Динамически выделяем память под
  45.             // хранение массива размера size
  46.             //считываем строку
  47.             string str = Console.ReadLine();
  48.             //разбиваем по пробелам
  49.             string[] mas = str.Split(' ');
  50.             int[] a = new int [size];
  51.             for (int i = 0; i < size; i++)
  52.             {
  53.                 a[i] = int.Parse(mas[i]);
  54.             }
  55.  
  56.             quickSort(a, 0, size - 1);
  57.  
  58.             // Выводим отсортированный массив
  59.             for (int i = 0; i < size; i++)
  60.             {
  61.                 Console.Write(a[i]);
  62.                 Console.Write(' ');
  63.             }
  64.         }
  65.     }
  66. }

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


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

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

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

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

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

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