Определение алгоритма
Алгоритм – запись последовательных недвусмысленно определенных действий. При выполнении алгоритма получается полезный результат - решается задача.
В программировании алгоритм - программный код решающий поставленную задачу.
Признаки алгоритма
- Детерминированность (от лат. determinate — определенность, точность) - точность формулировок
- Дискретность (от лат. discretus — разделенный, прерывистый) – это разделение алгоритма на отдельные обособленные действий (этапы).
- Завершаемость – как отдельные действия, так и сам алгоритм, должны быть завершенными, конечными для фиксации полезного результата.
- Массовость – один алгоритм может быть применен к с различным исходным данными.
- Результативность – алгоритм должен приводить к достоверному решению.
Базовые типы алгоритмов в программировании
Алгоритмы поиска
- Поиск максимального/минимального элемента
- Линейный поиск
- Бинарный поиск
- Поиск простого числа
Алгоритм сортировки
- Алгоритмическая сложность
- Пузырьковая сортировка
- Сортировка вставками
- Сортировка выбором
- Быстрая сортировка
Рекурсия
- Факториал и числа Фибоначчи
- Алгоритм Евклида
- Быстрое возведение в степень
- Генерация чисел
- Быстрая сортировка
- Сортировка слиянием
Алгоритмы на графах
- Основные понятия о графах
- Хранение графа в памяти
- Поиск в глубину
- Поиск в ширину
- Алгоритм Дейкстры
- Алгоритм Флойда — Уоршелла
- Алгоритм Беллмана — Форда
Деревья
- Основные понятия о деревьях
- Бинарное дерево
- Двоичная куча
- Балансировка дерева
- Красное — черное дерево