Сборка проекта с помощью cmake:
git clone https://github.com/Dovgalyuk/Algorithms
cd Algorithms
mkdir build
cd build
cmake ..
make
- Git howto: https://githowto.com/ru
- Интерактивное изучение веток в git: https://learngitbranching.js.org/?locale=ru_RU
- Pro Git: https://git-scm.com/book/ru/v2
- Решения отправляются с помощью Pull request
- Должны проходить все релевантные тесты (проверяйте отчёт о тестировании при создании pull request)
- Размер вектора должен домножаться на константу в случае его переполнения
- Стек и очередь не должны ограничивать число сохраняемых значений
- Дополнительные требования указаны в комментариях к заголовкам функций
https://habr.com/ru/post/653567/
- Проверяйте код на имеющихся тестах, пишите новые
- Если нашлись ошибки, просмотрите остальной код, там могут быть похожие
https://www.youtube.com/watch?v=30PzSv4ZIBU&list=PLoWGNURguz9Xk248HDiJICojc-0rlayUW https://neerc.ifmo.ru/wiki/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85 https://www.youtube.com/c/%D0%A2%D0%B8%D0%BC%D0%BE%D1%84%D0%B5%D0%B9%D0%A5%D0%B8%D1%80%D1%8C%D1%8F%D0%BD%D0%BE%D0%B2/playlists
https://habr.com/ru/company/infopulse/blog/194726/
https://www.youtube.com/watch?v=pxR3UoO9c9w https://www.youtube.com/watch?v=ZRdOb4yR0kk
https://habr.com/ru/company/vdsina/blog/544218/
https://www.youtube.com/watch?v=4c-jNoIz-uU
- Массив переменного размера
- Абстрактный тип данных "Стек"
- Абстрактный тип данных "Очередь"
https://habr.com/ru/company/infopulse/blog/238131/
https://www.youtube.com/watch?v=XlvdZCkXKL8
https://www.youtube.com/watch?v=sC566vzV9B0
https://www.youtube.com/watch?v=f1w6Ac6OEsY https://www.youtube.com/watch?v=VmocLw9wwM0 https://www.youtube.com/watch?v=UVAfng6OCW0 https://www.youtube.com/watch?v=VgPAFaEYEo4
- Поиск в глубину
- Поиск компонентов связности
https://www.youtube.com/watch?v=-_E4mOMDeGs
- Способы представления графов в памяти
https://habr.com/ru/company/otus/blog/675730/
- Поиск в ширину
- Алгоритм Дейкстры
https://www.youtube.com/watch?v=intKT6COqQY
- Алгоритм Беллмана-Форда
- Определение наличия цикла отрицательного веса в графе
- Кратчайшие пути в ациклических ориентированных графах
- Кратчайшие пути между всеми парами вершин: алгоритм Флойда-Уоршолла, алгоритм Джонсона
- Поиск пути на координатной сетке, волновой алгоритм
https://www.youtube.com/watch?v=cca8QY3tuCI https://www.youtube.com/watch?v=9ev9Y-hJhj4
- Поиск сильно связных компонентов
https://www.youtube.com/watch?v=AYbY8fIDNz4
https://www.youtube.com/watch?v=vPHUm874EoA
https://www.youtube.com/watch?v=94_SkpI4_V8
https://www.youtube.com/watch?v=-4M5P5af7NE
- Рандомизированное двоичное дерево поиска
- АВЛ-деревья
- Красно-черные деревья
- Расширяющиеся деревья (splay trees)
https://www.youtube.com/watch?v=RQtdVNIaH6c https://www.youtube.com/watch?v=ysbq-7IlC3M https://www.youtube.com/watch?v=RnQYXltlkrI
https://www.youtube.com/watch?v=aNswE4MlVgM
https://www.youtube.com/watch?v=BtBxtoXBI54 https://www.youtube.com/watch?v=rVr1y32fDI0
https://www.youtube.com/watch?v=noQ4SUoqrQA https://www.youtube.com/watch?v=dcG0hvnRi24
https://www.youtube.com/watch?v=M66Tit-o6h4 https://www.youtube.com/watch?v=JHzGsqPbEC8
- Задача о выборе заявок
- Код Хаффмена
https://www.youtube.com/watch?v=RBZ8l3k9O4c https://www.youtube.com/watch?v=aFXFSTIIylU
- Быстрая сортировка (Хоара)
- Сортировка слиянием
- Сортировка с помощью кучи
https://www.youtube.com/watch?v=cCLSjxrlORM https://www.youtube.com/watch?v=CKBvzscmwKs
https://www.youtube.com/watch?v=JFUpuzrHB6s
- Задача поиска подстроки в строке
- Алгоритм Карпа-Рабина
- Алгоритм Кнута-Морриса-Пратта
https://www.youtube.com/watch?v=kIsPv5XRJgU
https://habr.com/ru/post/455632/ https://habr.com/ru/post/664044/ https://habr.com/ru/post/673776/
https://www.youtube.com/watch?v=ahgv_eJDhrE
https://habr.com/ru/company/mailru/blog/479822/
https://neerc.ifmo.ru/wiki/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC_A*