Як відсортувати список за алфавітом.

Будь-яку послідовність даних одного типу можна представити у вигляді списку. Списки бувають впорядкованими і невпорядкованими. В останньому випадку робота з даними, пошук потрібного значення, звернення до елементів списку викликають певні труднощі. Список строкових змінних, як правило, впорядковується за алфавітом. Існує багато методів сортування, в кожному конкретному випадку слід вибирати найбільш оптимальний алгоритм.
Інструкція
1
При виборі найкращого методу сортування слід враховувати два параметри: час, що витрачається на операцію упорядкування, і обсяг необхідної пам'яті для допоміжного зберігання даних. Алгоритми сортування, які не потребують використання додаткової пам'яті, відносять до сортувань «на місці». Однією з найпростіших для реалізації вважається повільна «бульбашкова» сортування, при якій здійснюється перегляд кожної пари елементів у списку і проводиться обмін місцями залежно від бажаного порядку.
2
Існує більш швидкий метод сортування за допомогою знаходження мінімального або максимального елемента в списку. У випадку з сортуванням по алфавітом при кожному проході за списком потрібно знайти його максимальний елемент - це буде рядок, що починається на саму найближчу до початку алфавіту букву. Після знаходження рядок міняється місцями з найпершим елементом списку на першому проході. При подальшому розгляді списку перше місце виключається, шукається наступний максимальний елемент, ставиться вже на друге місце і т.д. Код програми сортування на С ++ методом знаходження максимального елемента списку: String Arr [20], cTemp; int N = 20, Мах, РOS; for (int i = 0; i
3
Найбільш оптимальним рішенням упорядкування строкових даних у списку можна назвати сортування вставками. Її суть полягає у тому, що при кожному проході за списком є впорядкована частина списку з певної кількості елементів, таким чином, наступний розглянутий елемент поміщається на відповідне йому місце в списку. Код програми на С ++ алгоритму сортування вставками: String Arr [20], cTemp; int N = 20; for (int i = 1, j = 0; i
Корисна порада
Крім розглянутих способів упорядкування, найкращі результати дають наступні алгоритми сортування: підрахунком, злиттям, перемішуванням (або шейкерні сортування), гномів і сортування за допомогою двійкового дерева.