Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео.
Почему я считаю, что первым языком не должен быть Python. Ну просто нет никаких стимулов писать некоторые алгоритмы. Ну, хоть той же сортировки. Ну, а я буду писать алгоритмы на любом языке, потому как алгоритмы мне интересней.
См. также
Гномья сортировка на языке Python
Название сортировки связано с алгоритмом того, как садовые гномы (роботы) сортируют цветочные горшки. Сортировку ещё называется глупой. Забавно, но столь простая сортировка была открыта только в 2000 году.
Удивительно, но "глупая" сортировка не содержит ни вложенных циклов ни рекурсии. Не такая уж она глупая.
Суть алгоритма сортировки заключается в следующем. Сравниваются i-й и i+1-й элементы массива. Если i-й элемент меньше или равен i+1-ого то i увеличивается на 1. В противном случае происходит перестановка i-ого и i+1-ого элементов. При этом i уменьшается на 1. Это ключевой момент. Связан он с тем, что возможно придётся переставлять элементы с меньшими индексами. Таким образом меньшие элементы будут сдвигаться к началу массива. Важное граничное условие: i не будет уменьшаться, если оно равно 0. Процесс сортировки заканчивается, когда i достигает индекса последнего элемента.
Ниже на языке Python представлена программа гномьей сортировки
Результат выполнения программы
0 0 0 0 1 1 1 2 2 2 4 4 5 6 7 7 7
Вот в общем то и всё.
Предыдущая статья по сортировке...
Следующая статья по сортировке...
Хорошего программирования. Оставляйте свои комментарии, не забывайте про лайки и подписывайтесь на мой канал programmer's notes.