Книги и сайты: различия между версиями

Материал из Олимпиадное программирование в УлГТУ
Перейти к навигации Перейти к поиску
(не показаны 22 промежуточные версии этого же участника)
Строка 1: Строка 1:
== Тестирующие системы, представленные в [http://acm.khpnets.info/monitor/ мониторе] ==
== Тестирующие системы ==
* [http://acmp.ru http://acmp.ru]
Представленные в [http://github.com/vfolunin/monitor мониторе]:
* [http://acm.timus.ru http://acm.timus.ru]
* [http://acmp.ru acmp.ru]
* [http://acm.sgu.ru http://acm.sgu.ru]
* [http://acm.timus.ru acm.timus.ru]
* [http://informatics.mccme.ru http://informatics.mccme.ru]
* [http://informatics.mccme.ru informatics.mccme.ru]
* [http://codeforces.ru http://codeforces.ru]
* [http://codeforces.com codeforces.com]
* [http://e-olymp.com e-olymp.com]
* [http://spoj.com spoj.com]
* [http://hackerearth.com hackerearth.com]
* [http://onlinejudge.org onlinejudge.org]
Другие:
* [http://leetcode.com leetcode.com]


== Сайты с теоретической информацией ==
== Сайты ==
Теория:
* [http://e-maxx.ru/algo/ e-maxx.ru]
* [http://e-maxx.ru/algo/ e-maxx.ru]
* [http://neerc.ifmo.ru/wiki/index.php?title=%D0%94%D0%B8%D1%81%D0%BA%D1%80%D0%B5%D1%82%D0%BD%D0%B0%D1%8F_%D0%BC%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0,_%D0%B0%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 Викиконспекты ИТМО]
* [http://neerc.ifmo.ru/wiki/index.php?title=%D0%94%D0%B8%D1%81%D0%BA%D1%80%D0%B5%D1%82%D0%BD%D0%B0%D1%8F_%D0%BC%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0,_%D0%B0%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 neerc.ifmo.ru/wiki]
* [http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=alg_index Topcoder Algorithm Tutorials]
* [http://brestprog.by/topics/ brestprog.by]
* [http://algorithmica.org/tg/ algorithmica.org/tg], [http://algorithmica.org/ru/ algorithmica.org/ru]
* [http://www.topcoder.com/community/data-science/data-science-tutorials/ topcoder.com]
Демонстрации:
* [http://visualgo.net/ VisuAlgo]
* [http://visualgo.net/ VisuAlgo]
* [http://www.cs.usfca.edu/~galles/visualization/Algorithms.html Data Structure Visualizations]
Код:
* [http://www.codelibrary.ml/ indy256's CodeLibrary] ([http://github.com/indy256/codelibrary GitHub])
* [http://www.codelibrary.ml/ indy256's CodeLibrary] ([http://github.com/indy256/codelibrary GitHub])
* [http://adilet.org/algos/ ADJA's Algos] ([http://github.com/ADJA/algos GitHub])
* [http://adilet.org/algos/ ADJA's Algos] ([http://github.com/ADJA/algos GitHub])
* [http://algs4.cs.princeton.edu/code/ R. Sedgewick and K. Wayne's Java Algorithms and Clients] ([http://github.com/kevin-wayne/algs4/ GitHub])


== Книги ==
== Книги ==
=== Алгоритмы (классические учебники) ===
=== Алгоритмы (классические учебники) ===
* [http://mitpress.mit.edu/books/introduction-algorithms Introduction to Algorithms / Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. — 3rd ed. — Cambridge, MA: MIT Press, 2009. — 1292 p.]
* Introduction to Algorithms / Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. — 3rd ed. — Cambridge, MA: MIT Press, 2009. — 1292 p. ([http://mitpress.mit.edu/books/introduction-algorithms сайт книги])
: Алгоритмы: построение и анализ / Томас Х. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест, Клиффорд Штайн. — 3-е изд. — М.: Вильямс, 2013. — 1328 с.
: Алгоритмы: построение и анализ / Томас Х. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест, Клиффорд Штайн. — 2-е изд. — М.: Вильямс, 2005. — 1296 с.
: Алгоритмы: построение и анализ / Томас Х. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест, Клиффорд Штайн. — 2-е изд. — М.: Вильямс, 2005. — 1296 с.
* [http://algs4.cs.princeton.edu Sedgewick R., Wayne K. Algorithms / Robert Sedgewick, Kevin Wayne. — 4th ed. — Boston, MA: Addison-Wesley, 2011. — 976 p.]
* Sedgewick R., Wayne K. Algorithms / Robert Sedgewick, Kevin Wayne. — 4th ed. — Boston, MA: Addison-Wesley, 2011. — 976 p. ([http://algs4.cs.princeton.edu сайт книги])
: Седжвик Р., Уэйн К. Алгоритмы на Java / Роберт Седжвик, Кевин Уэйн. — 4-е изд. — М.: Вильямс, 2013. — 848 с.
: Седжвик Р., Уэйн К. Алгоритмы на Java / Роберт Седжвик, Кевин Уэйн. — 4-е изд. — М.: Вильямс, 2013. — 848 с.
: Седжвик Р. Фундаментальные алгоритмы на C++. Ч. 1–4 / Роберт Седжвик. — Киев: ДиаСофт, 2001. — 688 с.
: Седжвик Р. Фундаментальные алгоритмы на C++. Ч. 1–4 / Роберт Седжвик. — Киев: ДиаСофт, 2001. — 688 с.
: Седжвик Р. Фундаментальные алгоритмы на C++. Ч. 5 / Роберт Седжвик. — Киев: ДиаСофтЮП, 2002. — 496 с.
: Седжвик Р. Фундаментальные алгоритмы на C++. Ч. 5 / Роберт Седжвик. — Киев: ДиаСофтЮП, 2002. — 496 с.
* [http://www.algorist.com Skiena S. The Algorithm Design Manual / Steven S. Skiena. — 2nd ed. — London: Springer-Verlag, 2008. — 746 p.]
* Skiena S. The Algorithm Design Manual / Steven S. Skiena. — 2nd ed. — London: Springer-Verlag, 2008. — 746 p. ([http://www.algorist.com сайт книги])
: Скиена С. Алгоритмы. Руководство по разработке / Стивен С. Скиена. — 2-е изд. — СПб.: БХВ-Петербург, 2011. — 720 с.
: Скиена С. Алгоритмы. Руководство по разработке / Стивен С. Скиена. — 2-е изд. — СПб.: БХВ-Петербург, 2011. — 720 с.


Строка 28: Строка 42:
* [http://www.acmsolver.org/books/Art_of_Programming_Contest_SE_for_uva.pdf Art of Programming Contest / Ed. by A. S. Arefin. — 2nd ed. — Dhaka: Gyankosh Prokashoni, 2006. — 247 p.]
* [http://www.acmsolver.org/books/Art_of_Programming_Contest_SE_for_uva.pdf Art of Programming Contest / Ed. by A. S. Arefin. — 2nd ed. — Dhaka: Gyankosh Prokashoni, 2006. — 247 p.]
* [http://www.comp.nus.edu.sg/~stevenha/myteaching/competitive_programming/cp1.pdf Halim S. Competitive Programming / Steven Halim, Felix Halim. — Raleigh, NC: Lulu, 2010. — 152 p.]
* [http://www.comp.nus.edu.sg/~stevenha/myteaching/competitive_programming/cp1.pdf Halim S. Competitive Programming / Steven Halim, Felix Halim. — Raleigh, NC: Lulu, 2010. — 152 p.]
* Скиена С. С., Ревилла М. А. Олимпиадные задачи по программированию. Руководство по подготовке к соревнованиям / С. С. Скиена, М. А. Ревилла. — М.: КУДИЦ-ОБРАЗ, 2005. — 416 с.
* <span style="background-color: #0f0">+</span> Halim S. Competitive Programming 3 / Steven Halim, Felix Halim. &mdash; Raleigh, NC: Lulu, 2013. &mdash; 448 p.
* <span style="background-color: #0f0">+</span> [https://cses.fi/book.pdf Laaksonen A. Competitive Programmer’s Handbook / Antti Laaksonen. &mdash; 2017. &mdash; 290 p.]
* Долинский М. С. Решение сложных и олимпиадных задач по программированию / М. С. Долинский. &mdash; СПб.: Питер, 2006. &mdash; 366 с.
* Долинский М. С. Решение сложных и олимпиадных задач по программированию / М. С. Долинский. &mdash; СПб.: Питер, 2006. &mdash; 366 с.
* <span style="background-color: #0f0">+</span> Лааксонен А. Олимпиадное программирование. / Антти Лааксонен — М.: ДМК Пресс, 2018. — 300 с.
: <span style="line-height: 80%; font-size: 80%; font-style: italic;">Бумажный вариант online-книги того же автора. Порядок глав изменён; убраны разделы про перебор с отсечениями и кодирование Хаффмана; добавлены разделы про центроид-декомпозицию, heavy-light-декомпозицию, деревья поиска в глубину, суффиксные массивы, декартовы деревья, оптимизации ДП, параллельный бинпоиск и динамическую связность.</span>
* Окулов С. М. Основы программирования / С. М. Окулов. &mdash; 4-е изд. &mdash; М.: БИНОМ, 2008. &mdash; 440 с.
* Окулов С. М. Основы программирования / С. М. Окулов. &mdash; 4-е изд. &mdash; М.: БИНОМ, 2008. &mdash; 440 с.
* Окулов С. М. Программирование в алгоритмах / С. М. Окулов. &mdash; 3-е изд. &mdash; М.: БИНОМ, 2007. &mdash; 383 с.
* Окулов С. М. Программирование в алгоритмах / С. М. Окулов. &mdash; 3-е изд. &mdash; М.: БИНОМ, 2007. &mdash; 383 с.
* Порублев И. Н., Ставровский А. Б. Алгоритмы и программы. Решение олимпиадных задач. &mdash; М.: Вильямс, 2007. &mdash; 480 с.
* <span style="background-color: #0f0">+</span> Порублев И. Н., Ставровский А. Б. Алгоритмы и программы. Решение олимпиадных задач. &mdash; М.: Вильямс, 2007. &mdash; 480 с.
* Скиена С. С., Ревилла М. А. Олимпиадные задачи по программированию. Руководство по подготовке к соревнованиям / С. С. Скиена, М. А. Ревилла. &mdash; М.: КУДИЦ-ОБРАЗ, 2005. &mdash; 416 с.


=== Сборники задач ===
=== Сборники задач ===
Строка 38: Строка 56:
* Брудно А. Л., Каплан Л. И. Московские олимпиады по программированию / Под ред. Б. Н. Наумова. &mdash; 2-е изд. &mdash; М.: Наука, 1990. &mdash; 208 с.
* Брудно А. Л., Каплан Л. И. Московские олимпиады по программированию / Под ред. Б. Н. Наумова. &mdash; 2-е изд. &mdash; М.: Наука, 1990. &mdash; 208 с.
* Кирюхин В. М., Окулов С. М. Методика решения задач по информатике. Международные олимпиады / В. М. Кирюхин, С. М. Окулов. &mdash; М.: БИНОМ, 2007. &mdash; 600 с.
* Кирюхин В. М., Окулов С. М. Методика решения задач по информатике. Международные олимпиады / В. М. Кирюхин, С. М. Окулов. &mdash; М.: БИНОМ, 2007. &mdash; 600 с.
* [http://ejudge.btty.su/bmstu/addon/docs/books/moscow2006.pdf Московские олимпиады по информатике / Под ред. Е. В. Андреевой, В. М. Гуровица и В. А. Матюхина. &mdash; М.: МЦНМО, 2006 &mdash; 256 с.]
* [http://www.olympiads.ru/books/mskolymp/mosinformatolymp.pdf Московские олимпиады по информатике / Под ред. Е. В. Андреевой, В. М. Гуровица и В. А. Матюхина. &mdash; М.: МЦНМО, 2006 &mdash; 256 с.]
* [http://ejudge.btty.su/bmstu/addon/docs/books/sbory2006.pdf Московские учебно тренировочные сборы по информатике. Весна&ndash;2006 / Под ред. В. М. Гуровица. &mdash; М.: МЦНМО, 2007 &mdash; 194 с.]
* [http://www.olympiads.ru/moscow/sbory/sbory2.pdf Московские учебно тренировочные сборы по информатике. Весна&ndash;2006 / Под ред. В. М. Гуровица. &mdash; М.: МЦНМО, 2007 &mdash; 194 с.]
* Меньшиков Ф. В. Олимпиадные задачи по программированию / Ф. В. Меньшиков. &mdash; СПб: Питер, 2006. &mdash; 315 с.
* Меньшиков Ф. В. Олимпиадные задачи по программированию / Ф. В. Меньшиков. &mdash; СПб: Питер, 2006. &mdash; 315 с.
* [http://www.chasolimp.de/practic_menu.htm Особенности национальных задач по информатике / В. И. Беров, А. В. Лапунов, В. А. Матюхин, А. Е. Пономарёв. &mdash; Киров: Триада-С, 2000. &mdash; 160 с.]
* [http://www.chasolimp.de/practic_menu.htm Особенности национальных задач по информатике / В. И. Беров, А. В. Лапунов, В. А. Матюхин, А. Е. Пономарёв. &mdash; Киров: Триада-С, 2000. &mdash; 160 с.]
Строка 46: Строка 64:
=== Литература по темам ===
=== Литература по темам ===
==== Алгоритмы и структуры данных ====
==== Алгоритмы и структуры данных ====
* [http://www.cs.uiuc.edu/~jeffe/teaching/algorithms/everything.pdf Erickson J. Algorithms / Jeff Erickson. &mdash; Urbana, IL: University of Illinois at Urbana-Champaign, 2011. &mdash; 814 p.]
* [http://jeffe.cs.illinois.edu/teaching/algorithms/book/Algorithms-JeffE.pdf Erickson J. Algorithms / Jeff Erickson. &mdash; Urbana, IL: University of Illinois at Urbana-Champaign, 2019. &mdash; 472 p.]
* Kleinberg J., Tardos É. Algorithm Design / Jon Kleinberg, Éva Tardos. &mdash; Boston, MA: Addison-Wesley, 2005. &mdash; 864 p.
* Sedgewick R., Flajolet P. An Introduction to the Analysis of Algorithms / Robert Sedgewick, Philippe Flajolet. &mdash; 2th ed. &mdash; Boston, MA: Addison-Wesley, 2013. &mdash; 592 p.
* Sedgewick R., Flajolet P. An Introduction to the Analysis of Algorithms / Robert Sedgewick, Philippe Flajolet. &mdash; 2th ed. &mdash; Boston, MA: Addison-Wesley, 2013. &mdash; 592 p.
* Ахо А., Хопкрофт Д., Ульман Д. Построение и анализ вычислительных алгоритмов / А. Ахо, Дж. Хопкрофт, Дж. Ульман. &mdash; М.: Мир, 1979. &mdash; 536 с.
* Ахо А., Хопкрофт Д., Ульман Д. Построение и анализ вычислительных алгоритмов / А. Ахо, Дж. Хопкрофт, Дж. Ульман. &mdash; М.: Мир, 1979. &mdash; 536 с.
* Ахо А., Хопкрофт Д., Ульман Д. Структуры данных и алгоритмы / Альфред В. Ахо, Джон Хопкрофт, Джеффри Д. Ульман. &mdash; М.: Вильямс, 2000. &mdash; 384 с.
* Ахо А., Хопкрофт Д., Ульман Д. Структуры данных и алгоритмы / Альфред В. Ахо, Джон Хопкрофт, Джеффри Д. Ульман. &mdash; М.: Вильямс, 2000. &mdash; 384 с.
* Бабенко М. А., Левин М. В. Введение в теорию алгоритмов и структур данных / М. А. Бабенко, М. В. Левин. &mdash; М.: МЦНМО, 2016. &mdash; 144 с.
: <span style="line-height: 80%; font-size: 80%; font-style: italic;">Темы: динамические массивы, амортизационный анализ; сортировка выбором, &Omega;-оценка для сортировок сравнением, mergesort, quicksort, порядковая статистика (за O(N) в среднем и худшем случае); линейный поиск, бинарный поиск, деревья поиска, splay-деревья; кучи, heapsort, k-ичные кучи, сливаемые кучи (leftist и skew), персистентность, декартовы деревья; хеширование, разрешение коллизий (цепочки, открытая адресация, двойное хеширование), универсальное хеширование, совершенное хеширование, фильтр Блюма; DSU, DSU с отменами; RMQ, деревья отрезков, разреженные таблицы, LCA, сведение LCA к RMQ и наоборот, RMQ и LCA за (O(N), O(1)); динамическое программирование, НВП, перемножение цепочки матриц, принципы ДП.</span>
* Вирт Н. Алгоритмы и структуры данных / Н. Вирт. &mdash; М.: Мир, 1989. &mdash; 360 с.
* Вирт Н. Алгоритмы и структуры данных / Н. Вирт. &mdash; М.: Мир, 1989. &mdash; 360 с.
* [http://logic.pdmi.ras.ru/~kulikov/sites/default/files/algorithms_href.pdf Дасгупта С., Пападимитриу Х., Вазирани У. Алгоритмы / С. Дасгупта, Х. Пападимитриу, У. Вазирани. &mdash; М.: МЦНМО, 2014. &mdash; 320 с.]
* [http://alexanderskulikov.github.io/files/algorithms_href.pdf Дасгупта С., Пападимитриу Х., Вазирани У. Алгоритмы / С. Дасгупта, Х. Пападимитриу, У. Вазирани. &mdash; М.: МЦНМО, 2014. &mdash; 320 с.]
* Клейнберг Дж., Тардос Е. Алгоритмы: разработка и применение / Джон Клейнберг, Ева Тардос. &mdash; СПб: Питер, 2016. &mdash; 800 с. ([http://www.cs.princeton.edu/~wayne/kleinberg-tardos слайды лекций])
* Левитин А. В. Алгоритмы: введение в разработку и анализ / Ананий В. Левитин. &mdash; М.: Вильямс, 2006. &mdash; 576 с.
* Левитин А. В. Алгоритмы: введение в разработку и анализ / Ананий В. Левитин. &mdash; М.: Вильямс, 2006. &mdash; 576 с.
* Макконнелл Дж. Анализ алгоритмов. Вводный курс / Дж. Макконнелл. &mdash; М.: Техносфера, 2002. &mdash; 304 с.
* Макконнелл Дж. Анализ алгоритмов. Вводный курс / Дж. Макконнелл. &mdash; М.: Техносфера, 2002. &mdash; 304 с.
* Стивенс Р. Алгоритмы. Теория и практическое применение / Род Стивенс. &mdash; М.: Э, 2016. &mdash; 544 с.


==== Дискретная математика ====
==== Дискретная математика ====
Строка 65: Строка 86:


==== Вычислительная геометрия ====
==== Вычислительная геометрия ====
* [http://e-maxx.ru/bookz/files/andreeva.pdf Андреева Е. В., Егоров Ю. Е. Вычислительная геометрия на плоскости / Е. В. Андреева, Ю. Е. Егоров. // Информатика. &mdash; 2002. &mdash; №39, 40, 43, 44]
* [http://vlecomte.github.io/cp-geo.pdf Lecomte V. Handbook of geometry for competitive programmers / Victor Lecomte. — 2018. — 122 p.]
* <span style="background-color: #0f0">+</span> [http://e-maxx.ru/bookz/files/andreeva.pdf Андреева Е. В., Егоров Ю. Е. Вычислительная геометрия на плоскости / Е. В. Андреева, Ю. Е. Егоров. // Информатика. &mdash; 2002. &mdash; №39, 40, 43, 44]
* Берг М. Вычислительная геометрия. Алгоритмы и приложения / М. Берг, О. Чеонг, М. Кревельд, М. Овермарс. — М.: ДМК-Пресс, 2016. — 438 с.
* Препарата Ф., Шеймос М. Вычислительная геометрия / Ф. Препарата, М. Шеймос. &mdash; М.: Мир, 1989. &mdash; 478 с.
* Препарата Ф., Шеймос М. Вычислительная геометрия / Ф. Препарата, М. Шеймос. &mdash; М.: Мир, 1989. &mdash; 478 с.
* [https://server.179.ru/tasks/python/2014b1/minimum.pdf Теоретический минимум по по вычислительной геометрии для групп параллели B’. &mdash; Летняя компьютерная школа, 2010 г. &mdash; 6 с.]


==== Теория графов ====
==== Теория графов ====
Строка 79: Строка 103:


== Периодические издания и сборники ==
== Периодические издания и сборники ==
* Журнал Olympiads in Informatics
* Журнал [http://ioinformatics.org/page/ioi-journal-contents/3 Olympiads in Informatics]
: [http://www.mii.lt/olympiads_in_informatics/files/volume1.pdf 2007], [http://www.mii.lt/olympiads_in_informatics/files/volume2.pdf 2008], [http://www.mii.lt/olympiads_in_informatics/files/volume3.pdf 2009], [http://www.mii.lt/olympiads_in_informatics/files/volume4.pdf 2010], [http://www.mii.lt/olympiads_in_informatics/files/volume5.pdf 2011], [http://www.mii.lt/olympiads_in_informatics/files/volume6.pdf 2012], [http://www.mii.lt/olympiads_in_informatics/files/volume7.pdf 2013]
: [http://ioinformatics.org/page/ioi-journal-index/44#volume1 2007], [http://ioinformatics.org/page/ioi-journal-index/44#volume2 2008], [http://ioinformatics.org/page/ioi-journal-index/44#volume3 2009], [http://ioinformatics.org/page/ioi-journal-index/44#volume4 2010], [http://ioinformatics.org/page/ioi-journal-index/44#volume5 2011], [http://ioinformatics.org/page/ioi-journal-index/44#volume6 2012], [http://ioinformatics.org/page/ioi-journal-index/44#volume7 2013], [http://ioinformatics.org/page/ioi-journal-index/44#volume8 2014], [http://ioinformatics.org/page/ioi-journal-index/44#volume9 2015], [http://ioinformatics.org/page/ioi-journal-index/44#volume10 2016], [http://ioinformatics.org/page/ioi-journal-index/44#volume10si 2016+], [http://ioinformatics.org/page/ioi-journal-index/44#volume11 2017], [http://ioinformatics.org/page/ioi-journal-index/44#volume11si 2017+], [http://ioinformatics.org/page/ioi-journal-index/44#volume12 2018], [http://ioinformatics.org/page/ioi-journal-index/44#volume13 2019]
* Сборники Зимней школы по программированию ХНУРЭ
* Сборники Зимней школы по программированию ХНУРЭ
: [http://ws.kh.ua/media/sbornik/Sbornik2008.pdf 2008], [http://ws.kh.ua/media/sbornik/Sbornik2009.pdf 2009], [http://ws.kh.ua/media/sbornik/Sbornik2010.pdf 2010], [http://ws.kh.ua/media/sbornik/Sbornik2011.pdf 2011], [http://ws.kh.ua/media/sbornik/Sbornik2012.pdf 2012], [http://ws.kh.ua/media/sbornik/Sbornik2013.pdf 2013], [http://ws.kh.ua/media/sbornik/Sbornik2014.pdf 2014]
: [http://ws.kh.ua/media/sbornik/Sbornik2008.pdf 2008], [http://ws.kh.ua/media/sbornik/Sbornik2009.pdf 2009], [http://ws.kh.ua/media/sbornik/Sbornik2010.pdf 2010], [http://ws.kh.ua/media/sbornik/Sbornik2011.pdf 2011], [http://ws.kh.ua/media/sbornik/Sbornik2012.pdf 2012], [http://ws.kh.ua/media/sbornik/Sbornik2013.pdf 2013], [http://ws.kh.ua/media/sbornik/Sbornik2014.pdf 2014]
* Сборники Южного четвертьфинала NEERC (Саратов)
: 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013

Версия от 05:12, 11 ноября 2019

Тестирующие системы

Представленные в мониторе:

Другие:

Сайты

Теория:

Демонстрации:

Код:

Книги

Алгоритмы (классические учебники)

  • Introduction to Algorithms / Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. — 3rd ed. — Cambridge, MA: MIT Press, 2009. — 1292 p. (сайт книги)
Алгоритмы: построение и анализ / Томас Х. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест, Клиффорд Штайн. — 3-е изд. — М.: Вильямс, 2013. — 1328 с.
Алгоритмы: построение и анализ / Томас Х. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест, Клиффорд Штайн. — 2-е изд. — М.: Вильямс, 2005. — 1296 с.
  • Sedgewick R., Wayne K. Algorithms / Robert Sedgewick, Kevin Wayne. — 4th ed. — Boston, MA: Addison-Wesley, 2011. — 976 p. (сайт книги)
Седжвик Р., Уэйн К. Алгоритмы на Java / Роберт Седжвик, Кевин Уэйн. — 4-е изд. — М.: Вильямс, 2013. — 848 с.
Седжвик Р. Фундаментальные алгоритмы на C++. Ч. 1–4 / Роберт Седжвик. — Киев: ДиаСофт, 2001. — 688 с.
Седжвик Р. Фундаментальные алгоритмы на C++. Ч. 5 / Роберт Седжвик. — Киев: ДиаСофтЮП, 2002. — 496 с.
  • Skiena S. The Algorithm Design Manual / Steven S. Skiena. — 2nd ed. — London: Springer-Verlag, 2008. — 746 p. (сайт книги)
Скиена С. Алгоритмы. Руководство по разработке / Стивен С. Скиена. — 2-е изд. — СПб.: БХВ-Петербург, 2011. — 720 с.

Олимпиадное программирование

Бумажный вариант online-книги того же автора. Порядок глав изменён; убраны разделы про перебор с отсечениями и кодирование Хаффмана; добавлены разделы про центроид-декомпозицию, heavy-light-декомпозицию, деревья поиска в глубину, суффиксные массивы, декартовы деревья, оптимизации ДП, параллельный бинпоиск и динамическую связность.
  • Окулов С. М. Основы программирования / С. М. Окулов. — 4-е изд. — М.: БИНОМ, 2008. — 440 с.
  • Окулов С. М. Программирование в алгоритмах / С. М. Окулов. — 3-е изд. — М.: БИНОМ, 2007. — 383 с.
  • + Порублев И. Н., Ставровский А. Б. Алгоритмы и программы. Решение олимпиадных задач. — М.: Вильямс, 2007. — 480 с.
  • Скиена С. С., Ревилла М. А. Олимпиадные задачи по программированию. Руководство по подготовке к соревнованиям / С. С. Скиена, М. А. Ревилла. — М.: КУДИЦ-ОБРАЗ, 2005. — 416 с.

Сборники задач

Литература по темам

Алгоритмы и структуры данных

  • Erickson J. Algorithms / Jeff Erickson. — Urbana, IL: University of Illinois at Urbana-Champaign, 2019. — 472 p.
  • Sedgewick R., Flajolet P. An Introduction to the Analysis of Algorithms / Robert Sedgewick, Philippe Flajolet. — 2th ed. — Boston, MA: Addison-Wesley, 2013. — 592 p.
  • Ахо А., Хопкрофт Д., Ульман Д. Построение и анализ вычислительных алгоритмов / А. Ахо, Дж. Хопкрофт, Дж. Ульман. — М.: Мир, 1979. — 536 с.
  • Ахо А., Хопкрофт Д., Ульман Д. Структуры данных и алгоритмы / Альфред В. Ахо, Джон Хопкрофт, Джеффри Д. Ульман. — М.: Вильямс, 2000. — 384 с.
  • Бабенко М. А., Левин М. В. Введение в теорию алгоритмов и структур данных / М. А. Бабенко, М. В. Левин. — М.: МЦНМО, 2016. — 144 с.
Темы: динамические массивы, амортизационный анализ; сортировка выбором, Ω-оценка для сортировок сравнением, mergesort, quicksort, порядковая статистика (за O(N) в среднем и худшем случае); линейный поиск, бинарный поиск, деревья поиска, splay-деревья; кучи, heapsort, k-ичные кучи, сливаемые кучи (leftist и skew), персистентность, декартовы деревья; хеширование, разрешение коллизий (цепочки, открытая адресация, двойное хеширование), универсальное хеширование, совершенное хеширование, фильтр Блюма; DSU, DSU с отменами; RMQ, деревья отрезков, разреженные таблицы, LCA, сведение LCA к RMQ и наоборот, RMQ и LCA за (O(N), O(1)); динамическое программирование, НВП, перемножение цепочки матриц, принципы ДП.

Дискретная математика

  • Асанов М. О. Барановский В. А., Расин В. В. Дискретная математика: графы, матроиды, алгоритмы / М. О. Асанов, В. А. Барановский, В. В. Расин. — СПб.: Лань, 2010. — 368 с.
  • Грэхем Р., Кнут Д., Паташник О. Конкретная математика. Основание информатики / Р. Грэхем, Д. Кнут, О. Паташник. — М.: Мир, 1998. — 703 с.
  • Кук Д., Бейз Г. Компьютерная математика / Д. Кук, Г. Бейз. — М.: Наука, 1990. — 384 с.
  • Новиков Ф. А. Дискретная математика для программистов / Ф. А. Новиков. — 2-е изд. — СПб.: Питер. 2007. — 364 с.
  • Окулов С. М. Дискретная математика. Теория и практика решения задач по информатике / С. М. Окулов. — 2-е изд. — М.: БИНОМ, 2012. — 422 с.
  • Хаггарти Р. Дискретная математика для программистов / Р. Хаггарти — М.: Техносфера, 2004. — 320 с.

Вычислительная геометрия

Теория графов

  • Кристофидес Н. Теория графов. Алгоритмический подход / Н. Кристофидес. — М.: Мир, 1978. — 432 с.
  • Оре О. Графы и их применение / О. Оре. — М. Мир, 1965. — 175 с.
  • Оре О. Теория графов / О. Оре. — 2-е изд. — М. Наука, 1980. — 336 с.
  • Харари Ф. Теория графов / Под ред. Г. П. Гаврилова. — М.: Едиториал УРСС, 2003. — 296 с.

Алгоритмы на строках

  • Гасфилд Д. Строки, деревья и последовательности в алгоритмах / Дэн Гасфилд. — СПб: Невский диалект; БХВ-Петербург, 2003. — 654 с.
  • Смит Б. Методы и алгоритмы вычислений на строках / Билл Смит. — М.: Вильямс, 2006. — 496 с.

Периодические издания и сборники

2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2016+, 2017, 2017+, 2018, 2019
  • Сборники Зимней школы по программированию ХНУРЭ
2008, 2009, 2010, 2011, 2012, 2013, 2014