Сортировка пузырьков в C - это простой алгоритм сортировки, который многократно сравнивает соседние элементы данного массива и меняет их местами, если они находятся в неправильном порядке. Возможно, вам интересно название Bubble Sort. Ниже приведены указатели, рассматриваемые в этой статье:
- Что такое пузырьковая сортировка в C?
- Алгоритм пузырьковой сортировки
- Пример пузырьковой сортировки в C
- Функция пузырьковой сортировки
- Пузырьковая сортировка в программе C
Что такое пузырьковая сортировка в C?
Метод сортировки назван так потому, что алгоритм действует как пузырь: более легкие элементы поднимаются, а более тяжелые элементы располагаются. Алгоритм пузырьковой сортировки сортирует список по этапам. Теперь для сортировки списка из n элементов для пузырьковой сортировки требуется n-1 проход. Чтобы было понятнее, давайте разбираться в этом шаг за шагом.
Алгоритм пузырьковой сортировки
- Пройдите 1 :
- X [0] и X [1] сравниваются и меняются местами, если X [0]> X [1]
- X [1] и X [2] сравниваются и меняются местами, если X [1]> X [2]
- X [2] и X [3] сравниваются и меняются местами, если X [2]> X [3] и так далее & hellip
- В конце прохода 1 самый большой элемент списка помещается в самый высокий индекс списка.
- Шаг 2:
- X [0] и X [1] сравниваются и меняются местами, если X [0]> X [1]
- X [1] и X [2] сравниваются и меняются местами, если X [1]> X [2]
- X [2] и X [3] сравниваются и меняются местами, если X [2]> X [3] и так далее & hellip
- В конце этапа 2 второй по величине элемент списка помещается во второй по величине индекс списка.
- Пройти n-1:
- X [0] и X [1] сравниваются и меняются местами, если X [0]> X [1]
- X [1] и X [2] сравниваются и меняются местами, если X [1]> X [2]
- X [2] и X [3] сравниваются и меняются местами, если X [2]> X [3] и так далее & hellip
- В конце этого прохода. Наименьший элемент списка помещается в первый индекс списка.
Пример пузырьковой сортировки в C
Массив: -5, 35, 2, 13, -15
Пройдите 1
- ( -5, 35 , 2, 13, -15) -> ( -5, 35 , 2, 13, -15). Здесь алгоритм сравнивает первые два элемента.
- (-5, 35, 2 , 13, -15) -> (-5, 2, 35 , 13, -15), поменять местами, поскольку 35> 2
- (-5, 2, 35, 13 , -15) -> (-5, 2, 13, 35 , -15), поменять местами с 35> 13
- (-5, 2, 13,35, -15) -> (-5, 2, 13,-15, 35), Поменять местами с 35> -15
Последний элемент - самый большой элемент.
Пройти 2
- ( -5, 2 , 13, -15, 35) -> (- 5, 2 , 13, -15, 35)
- (-5, 2, 13, 35, -15) -> (-5, 2, 13 , -15, 35)
- (-5, 2, 13, -15 , 35) -> (-5, 2, -15, 13 , 35), поменять местами с 13> -15
Второй последний элемент - второй по величине элемент.
шаблоны проектирования на php с примером
Пройти 3
- ( -5, 2 , -15, 13, 35) -> ( -5, 2 , -15, 13, 35)
- (-5, 2, -15 , 13, 35) -> (-5, -15, 2 , 13, 35), поменять местами, поскольку 2> -15
Третий последний элемент - третий по величине элемент.
Пройти 4
- ( -5, -15 , 2, 13, 35) -> ( -15, -5 , 2, 13, 35), поменять местами с -5> -15
В конце концов, первый самый маленький & 2 nd это второй самый маленький элемент в массиве. Итак, в этом случае для сортировки массива из 5 элементов требовалось четыре прохода.
Прежде чем подробно рассматривать алгоритм, давайте посмотрим на временную сложность алгоритма пузырьковой сортировки на языке C.
Сложность пузырьковой сортировки
- Сложность наихудшего случая:На2)
- Лучшая сложность случая:На2)
- Средняя сложность кейса:На)
Теперь давайте быстро рассмотрим алгоритм, чтобы, двигаясь вперед, мы могли написать алгоритм сортировки пузырьков на C.
Функция пузырьковой сортировки
void bubbleSort (int array [], int n) {int i, j // Передача пузырьковой сортировки для (i = 0 iПузырьковая сортировка в программе C
#include // Функция для замены элементов void swap (int * a, int * b) {int temp = * a * a = * b * b = temp} // функция пузырьковой сортировки void bubbleSort (int array [], int n ) {int i, j для (i = 0 i
как использовать system.exit в JavaТеперь, после выполнения указанной выше программы на C, вы должны понять, как работает пузырьковая сортировка и как ее реализовать на языке C. Я надеюсь, что этот блог будет информативным и принесет вам дополнительную пользу.
Проверьте от Edureka, надежной компании онлайн-обучения с сетью из более чем 250 000 довольных учащихся по всему миру. Курс обучения и сертификации по Java J2EE и SOA от Edureka предназначен для студентов и профессионалов, которые хотят стать Java-разработчиками. Курс разработан, чтобы дать вам хорошее начало в программировании на Java и обучить вас как основным, так и продвинутым концепциям Java, а также различным средам Java, таким как Hibernate и Spring.
Есть вопрос к нам? Пожалуйста, укажите это в разделе комментариев к статье «Пузырьковая сортировка в C», и мы свяжемся с вами как можно скорее.