Автор оригинала: Python Examples.
Сортировка пузыря следует учитывать только для образовательных целей и начать работу со сортировочными алгоритмами. Но, когда речь идет о практических целях, используйте лучшие алгоритмы выполнения сортировки, такие как сортировка слияния.
Алгоритм сортировки пузыря
Python Python Bubble Sort
В следующем примере мы реализовали алгоритм сортировки пузыря. Кроме того, по умолчанию функция Bubble_Sort () в следующей программе сортирует список в порядке возрастания. Чтобы получить порядок убывания, все, что вам нужно сделать, просто обратный список.
Python Program
def bubble_sort(nlist): for i in range(len(nlist) - 1, 0, -1): no_swap = True for j in range(0, i): if nlist[j + 1] < nlist[j]: nlist[j], nlist[j + 1] = nlist[j + 1], nlist[j] no_swap = False if no_swap: return #input list alist = [1, 74, 96, 5, 42, 63] print('Input List\n', alist) #sort list bubble_sort(alist) print('Sorted List\n', alist)
Выход
Input List [1, 74, 96, 5, 42, 63] Sorted List [1, 5, 42, 63, 74, 96]
Если вы соблюдаете вышеуказанную программу, мы оптимизировали Bubble Worth, когда во время пропуска нет обмена, используя no_swap логическая переменная. Во время прохода, если нет свопа, то очевидно, что элементы уже отсортированы. Следовательно, нам не требуется больше проходов для поиска следующего наибольшего числа.
Заключение
В этом руководстве примеров Python мы узнали, как реализовать алгоритм сортировки пузыря в Python.
Похожие учебники
- Программа сортировки кучи Python
- Программа сортировки сортировки Python Merge
- Программа сортировки вставки Python
- Программа быстрого сортировки Python
- Программа сортировки отбора Python
- Программы сортировки Python