Исходный код «Изысканное объяснение алгоритма: описание языка C» и проект Xcode, проект Linux
Просто используйте Xcode, чтобы открыть MasteringAlgorithms.xcodeproj
на Mac. Algorithms.xcodeproj
— это проект файла библиотеки алгоритмов. Каждый пример представляет собой отдельный файл запуска.
Командная строка Mac или Linux
Все, что вам нужно, это простая среда компиляции C cc
Затем выполните ./run bfs
, где bfs
— это каталог примера в Example
.
Вы также можете использовать cc
gcc
и т. д. gcc source/*.c Example/bfs/main.c -I ./include -o bfs && ./bfs
структура данных
связанный список
- односвязный список
- Управление фреймами страниц
- двусвязный список
- циклический связанный список
- Замена страницы второго шанса
стопки и очереди
- куча
- очередь
- обработка событий
собирать
- собирать
- Покрытие коллекции
Хэш-таблица
- связанная хеш-таблица
- таблица символов
- Открыть хеш-таблицу адресов
Дерево
- Бинарное дерево
- Обход двоичного дерева
- двоичное дерево поиска
Куча и приоритетная очередь
- куча
- приоритетная очередь
- Сортировка посылок
картина
- картина
- Глубокий поиск графиков
- Поиск по ширине графа
алгоритм
Сортировка и поиск
- сортировка вставкой
- Быстрая сортировка
- список каталогов
- сортировка слиянием
- сортировка по подсчету
- Поразрядная сортировка
- двоичный поиск
- проверка орфографии
Численный расчет
- полиномиальная интерполяция
- метод оценки наименьших квадратов
- Решение уравнений
Сжатие данных
- Битовые операции
- Кодирование Хаффмана
- Оптимизация передачи данных по сети
- LZ77
Шифрование данных
- Алгоритм DES
- режим блочного шифрования
- Алгоритм RSA
графовый алгоритм
- минимальное связующее дерево
- кратчайший путь
- маршрут кратчайшего расстояния
- проблема коммивояжера
геометрический алгоритм
- Проверьте, пересекаются ли сегменты линий
- Расчет выпуклой оболочки
- Длина сферической дуги
- Примерное расстояние между двумя точками на Земле