Алгоритміка () — дисципліна, що вивчає алгоритми, структури даних та їх застосування до розв'язування задач програмування. У практичному плані алгоритміка є навчанням студента спортивного програмування.

Відрізняється від теорії алгоритмів тим що не займається пошуком доведення існування алгоритму, а займається пошуком оптимального (в основному за часом виконання), алгоритму, що розв'язує дану задачу. Якщо такий алгоритм невідомий, то намагається розв'язати задачу хоча б частково.

Теми що вивчаються Це список базових тем по алгоритмах:

Аналіз алгоритмів - оцінка ефективності алгоритму (використаних ним ресурсів), для порівняння з іншими алгоритмами Нотація великого О - для запису оцінки потрібних ресурсів - оцінки складності алгоритму в залежності від різних можливих вхідних даних

Мурашиний алгоритм Апроксимаційний алгоритм Комбінаційний пошук Конкурентний аналіз Теорія обчислюваності Теорія складності обчислень Приголомшлива паралельність Раптовий алгоритм Еволюційний алгоритм Швидке перетворення Фур'є Генетичний алгоритм Пошук по графу Евристика Алгоритм сходження на вершину Імплементація Лас-Вегас (алгоритм) Монте-Карло (алгоритм) Чисельні методи Онлайн алгоритм

Схема приблизного поліноміального часу

Генератор псевдовипадкових чисел Квантовий алгоритм Увипадковлений алгоритм Часова складність алгоритму Алгоритм сортування Алгоритм пошуку Стабільний алгоритм Супер-рекурсивний алгоритм Обхід дерева

Відомі алгоритми

Алгоритми сортування Алгоритми на графах Алгоритми теорії чисел. (Алгоритм Евкліда та подібні) Алгоритми аналітичної геометрії (наприклад алгоритм Брезенхейма).

Див. також Список тем обчислюваності та складності для більш абстрактної теорії Список складності класів, обчислювальна складність Список структур даних.

Література

Зноски