Сортировка массива C#. Алгоритм «Сортировка пузырьком»

Алгоритм сортировки пузырьком относится к простейшим алгоритмам сортировки и часто применяется в учёбных целях, однако, в практическом плане применяется крайне редко (лишь на небольших массивах). Сложность алгоритма: O(n2). Смысл алгоритма состоит в том, что самые «легкие» (например, меньшие по значению) элементы массива как бы «всплывают» (перемещаются к началу массива) , а самые «тяжелые» — «тонут» (перемещаются в конец массива). Отсюда и название «Сортировка пузырьком»

Алгоритм

  1. Каждый элемент массива сравнивается с последующим и если элемент[i] > элемент[i+1] происходит замена.
  2. Шаг 1 повторяется n-1 раз, где n — количество элементов в массиве.

Реализация алгоритма «Сортировка пузырьком» в C#

Для реализации алгоритма «Сортировка пузырьком» (или, как иногда говорят — пузырьковая сортировка) написан метод, в качестве аргумента которому передается неотсортированный массив:

static void BubbleSort(int[] inArray)
{
    for (int i = 0; i < inArray.Length; i++)
        for (int j = 0; j < inArray.Length - i - 1; j++)
        {
            if (inArray[j] > inArray[j + 1])
            {
                int temp = inArray[j];
                inArray[j] = inArray[j + 1];
                inArray[j + 1] = temp;
            }
        }
}

Пример сортировки массива

static void Main(string[] args)
{
    Console.WriteLine("Введите через запятую целые числа и нажмите Enter");
    string[] nums = Console.ReadLine().Split(new char[] { ',' });
    int[] intArray = new int[nums.Length];
    for (int i = 0; i < nums.Length; i++)
    {
        intArray[i] = int.Parse(nums[i]);
    }

    BubbleSort(intArray);

    Console.WriteLine("\r\nОтсортированный массив:");
    foreach (int value in intArray)
    {
        Console.Write($"{value} ");
    }
}

Консольный вывод

Введите через запятую целые числа и нажмите Enter

0,-10,-2,1,2,4,5,6,6,6,7,8,9,0,11,10,99,100,-45,200

Отсортированный массив:

-45 -10 -2 0 0 1 2 4 5 6 6 6 7 8 9 10 11 99 100 200

 

Также рекомендуем вам ознакомиться с решением лабораторной работы на тему «Сортировка двумерного массива методом пузырька«
Подписаться
Уведомить о
guest
2 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии