====== Материалы ====== ===== Книги ===== - //Томас Х. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест. "Алгоритмы: построение и анализ"// - //Седжвик Р., Уэйн К. "Алгоритмы на Java"// - //Гасфилд Д. "Строки, деревья и последовательности в алгоритмах"// ===== Ссылки ===== ==== NP и сложность ==== * [[np_full_tasks_notes]] ==== Метод Монте-Карло ==== * [[https://compsciclub.ru/courses/machinelearning/2008-spring/classes/|Применение в машинном обучении (4 лекция)]] * [[https://habrahabr.ru/post/274975/|Хабрахабр]] ==== Графы ==== === Кратчайшие пути === * [[shortest_ways|Алгоритмы Дейкстра и Флойда-Уоршелла]] * [[a_star_ways|Алгоритм А*]] === Раскраска графов === * [[graph_coloring_notes]] * [[https://www.youtube.com/watch?v=wmmCILxyU-M|Лекция CS club (сложность 1,45 можно не смотреть)]] * [[https://www.youtube.com/watch?v=y4RAYQjKb5Y|Применение раскраски]] * [[http://www.lighterra.com/papers/graphcoloring/|Раскраска в компиляторах]] === Компоненты связности === * [[https://stepik.org/course/%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-63/syllabus| 5 лекция Stepik]] === Эвристические алгоритмы на графах === * {{ :courses:algorithms_building_and_analysis:a-star.pdf | Краткий констпект А*}} * {{ :courses:algorithms_building_and_analysis:a-star-source.pdf | Псевдокод А*}} * {{ :courses:algorithms_building_and_analysis:materials:midas-werneck.pdf | Подходы к применению A* в ГИС}} === Паросочетания === * [[https://stepik.org/course/126|Определения]] * [[https://www.youtube.com/watch?v=HmRQiOU7iqM|Максимальное паросочетание]] === Потоки в графах === * [[https://compsciclub.ru/courses/networkflows/2017-spring/about/|Основы тетории потоков в CS club с алгоритмом Форда-фолкерсона (Гольдберга (проталкивания предпотока), лекции 1, 4, 5)]] * [[http://www.adrian-haarbach.de/idp-graph-algorithms/implementation/maxflow-push-relabel/index_en.html|Интерактивный пример работы алгоритма Гольдберга (проталкивания предпотока)]] === Минимальный разрез === * [[https://compsciclub.ru/courses/randomized-algorithms/2020-spring/classes/5312/|Лекция в CS club по вероятностным алгоритмам (Каргер-Штейн)]] * [[https://neerc.ifmo.ru/wiki/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC_%D0%9A%D0%B0%D1%80%D0%B3%D0%B5%D1%80%D0%B0_%D0%B4%D0%BB%D1%8F_%D0%BD%D0%B0%D1%85%D0%BE%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D1%8F_%D0%BC%D0%B8%D0%BD%D0%B8%D0%BC%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE_%D1%80%D0%B0%D0%B7%D1%80%D0%B5%D0%B7%D0%B0|Конспект ИТМО (Каргер-Штейн, оценка сложности для обеспечения вероятности 1/n)]] * {{ :courses:algorithms_building_and_analysis:min-cut-itmo.pdf | Методичка ИТМО}} === Задача о коммивояжёре === * [[https://compsciclub.ru/courses/tsp/2017-autumn/|CS club лекции]] === Изоморфизм графов === * [[https://adriann.github.io/Ullman%20subgraph%20isomorphism.html|Краткое изложение алгоритма Ульмана]] ==== Строки ==== === Редакционное расстояние === * [[https://www.lektorium.tv/node/36961|Редакционное расстояние из курса биоинформатики]] * Гасфилд Д. "Строки, деревья и последовательности в алгоритмах" Раздел 11 "Ядро методов редактирования строк и выстраивания" (п.11.1, п.11.2, п.11.3) * [[https://algorithm-visualizer.org/dynamic-programming/levenshteins-edit-distance| Пошаговая визуализация работы алгоритма (входные строки задаются в константах: const str1 = 'stack'; const str2 = 'racket';)]] === Задача поиска точного поиска подстроки в строке, Кнут-Моррис-Пратт === * [[https://compsciclub.ru/en/courses/bioinformatics/2013-spring/classes/707/|Лекция Н. Вяххи в CS Club]] * [[https://www.youtube.com/watch?v=kIsPv5XRJgU|Лекция А.Куликова в CS-центре]] * Кормен "Алгоритмы. Построение и анализ" 3 изд. Глава 32 (Введение, п.32.1, 32.4) === Алгоритм Рабина-Карпа === * [[https://compsciclub.ru/en/courses/bioinformatics/2013-spring/classes/707/|Лекция Н. Вяххи в CS Club]] * Презентации Михаила Левина ({{:courses:algorithms_building_and_analysis:strings_hashfunctions.pdf | Хеширование строк, п.4}}, {{:courses:algorithms_building_and_analysis:strings_rabin-karp.pdf | алгоритм Рабина-Карпа}}) === Точный поиск набора образцов. Алгоритм Ахо-Корасик === * [[https://youtu.be/-KCd8UUwU38|Лекция Павла Маврина]] * [[https://www.youtube.com/watch?v=pX4VCKudwYo|Лекция М.Дворкина в CS-центре]] * [[https://cr.yp.to/bib/1975/aho.pdf|Оригинальная статья "Alfred V. Aho, Margaret J. Corasick. Efficient string matching: Anaid to bibliographic search"]] * Статьи на хабре: * [[https://habr.com/ru/post/198682/|Алгоритм Ахо-Корасик]] * [[https://habr.com/ru/post/201952/|Неверная интерпретация алгоритма Ахо-Корасик]] * [[http://e-maxx.ru/algo/aho_corasick|Алгоритм на e-maxx.ru]] === Суффиксные массивы === * [[https://www.youtube.com/watch?v=FU1yBlXEOXg| CSCenter: Суффиксные массивы, Михаил Дворкин]] * {{:courses:algorithms_building_and_analysis:algorithmic_challenges_2_suffix_array.pdf | Презентация построение суффиксного массива, Михаил Левин}}