Стійка і нестійка сортування на прикладі тортів

Алгоритми сортування мають різні різні параметри.
Один з цих параметрів - стійкість.

Стійкої сортуванням називають алгоритм, який не змінює послідовність однакових елементів.
Отже нестійкий може їх змінювати.

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

Так як торти продукт, що швидко псується, продати його треба, як можна швидше, тобто це мета магазину.

Але в той же час, так як торти це не найдешевші предмети в магазині, покупець буде прагнути купити торт дешевше.

Наприклад в магазин торти завозили протягом тижня, і під кінець тижня треба продати, що залишилося, як можна швидше.

Ми сортуємо масив тортів стійкою сортуванням по зростанню, і отримуємо спочатку найдешевші, і якщо є торти з однаковою ціною, то першим буде, як раз торт, який прибув в магазин раніше (отже продати його треба швидше, так як зіпсується він раніше).
І викладаємо перші кілька тортів з цього списку на вітрину.

Іншими словами, розташування однакових елементів в масиві може бути одним з фільтрів відбору або виведення елементів, який виходить застосувати без зайвих умов.

Якби алгоритм сортування був би нестійким, то магазин міг вчинити не дуже раціонально і продати торти, які могли б ще полежати.

Алгоритми і структури даних