Под сортировкой массива подразумевается процесс перестановки элементов массива с целью упорядочивания их в соответствии с каким-либо критерием. Массив упорядочен по возрастанию, если выполняться условие: a[0] ≤ a[1] ≤ a[2] ≤ ... ≤ a[n] где n - верхняя граница индекса массива. Алгоритм сортировки массива по возрастанию методом выбора можно представить как последовательность следующих шагов: 1. Просматривая массив от первого элемента, найти (выбрать) минимальный элемент и поменять его с первым элементом (поместить минимальный элемент на место первого элемента, а первый — на место минимального). 2...
Сегодня мы расскажем простым языком о Bubble Sort, Insertion Sort и Selection Sort. Покажем, какие идеи лежат в основе этих сортировок и продемонстрируем их сильные и слабые стороны. Разберём алгоритмы по шагам, рассмотрим их простые версии и даже немного улучшим. Дальнейший рассказ подразумевает, что вас не смущают такие фразы, как «сложность worst-case-алгоритма по времени равна O(n^2)». Иногда Time Complexity мы будем называть «сложностью по времени», а Space Complexity — «сложностью по памяти»...