Example

Це функція, яка передбачає, що програма проходить крізь список кілька разів, порівнюючи його елементи. Наступні рядки - пояснення.

Спочатку я визначаю кількість елементів у списку, а потім порівнюю сусідні. 

Рядки:

if arr[j] > arr[j+1]:

                arr[j], arr[j+1] = arr[j+1], arr[j]

можна пояснити так:

якщо поточне зілля бульше наступного, програма обмінює їх місцями.

Під час обімну програма виголошує фразу, а потім виводить обмінені елементи. На кожному кроці найбільший з них проходить на правильне місце.

Це мій приклад. Перші два елементи  обмінюються місцями: 7 і 3, ну і так продовжується до кінця списку.

Результат повинен мати такий вигляд:

Загалом, в основі багатьох сортувань лежить один алгоритм. Дозвольте мені:

Цей алгоритм базується на розділенні задачі на менші частини і їх послідовному об'єднанні. Тобто основна ідея полягає в тому, щоб розбити вхідний список на менші підсписки. а потім рекурсивно відсортувтаи їх, перед тим, як об'єднати в один. merge sort, quick sort та інші використовують цей підхід.