Основы олимпиадного программирования
Offered By: Saint Petersburg State University via Coursera
Course Description
Overview
Данный курс рассчитан на школьников 5-11 классов, которые хотели бы достигнуть высоких результатов в олимпиадах по программированию, таким как муниципальный и региональный этапы Всероссийской олимпиады школьников по информатике.
Курс также подойдет для студентов бакалавриата, изучающих математику и компьютерные науки, интересующихся решением задач по программированию и желающих участвовать в олимпиадах и международных соревнованиях.
Данный курс предназначен для начинающих, то есть для его прохождения не понадобится ничего, кроме базового владения каким-либо языком программирования и базовых знаний из школьной программы по математике. В курсе представлен обширный набор алгоритмов и структур данных, которых будет достаточно не только для того, чтобы показать какие-то результаты на муниципальном этапе, но и взять диплом призера на финальном этапе всероссийской олимпиады школьников по информатике. В курс входят такие темы, как: бинарный поиск, сортировка пузырьком, сортировка слиянием, быстрая сортировка, базовые задачи динамического программирования, поиск наибольшей общей подпоследовательности, поиск наибольшей возрастающей подпоследовательности, алгоритмы DFS и BFS, алгоритмы Дейкстры, Флойда и Форда — Беллмана, задачи динамического программирования на дереве, задача о рюкзаке, динамика по подотрезкам и подмножествам, генерация комбинаторных объектов, бинарное возведение в степень, алгоритм Евклида, хеши, Z-функция, префикс-функция, дерево отрезков, дерево Фенвика и т. д.
Курс также подойдет для студентов бакалавриата, изучающих математику и компьютерные науки, интересующихся решением задач по программированию и желающих участвовать в олимпиадах и международных соревнованиях.
Данный курс предназначен для начинающих, то есть для его прохождения не понадобится ничего, кроме базового владения каким-либо языком программирования и базовых знаний из школьной программы по математике. В курсе представлен обширный набор алгоритмов и структур данных, которых будет достаточно не только для того, чтобы показать какие-то результаты на муниципальном этапе, но и взять диплом призера на финальном этапе всероссийской олимпиады школьников по информатике. В курс входят такие темы, как: бинарный поиск, сортировка пузырьком, сортировка слиянием, быстрая сортировка, базовые задачи динамического программирования, поиск наибольшей общей подпоследовательности, поиск наибольшей возрастающей подпоследовательности, алгоритмы DFS и BFS, алгоритмы Дейкстры, Флойда и Форда — Беллмана, задачи динамического программирования на дереве, задача о рюкзаке, динамика по подотрезкам и подмножествам, генерация комбинаторных объектов, бинарное возведение в степень, алгоритм Евклида, хеши, Z-функция, префикс-функция, дерево отрезков, дерево Фенвика и т. д.
Syllabus
- Модуль 1. Сортировки и бинарный поиск
- Модуль 2. Динамика
- Модуль 3. Графы. DFS, BFS
- Модуль 4. Кратчайшие пути во взвешенных графах
- Модуль 5. Динамика (2)
- Модуль 6. Комбинаторика и теория чисел
- Модуль 7. Строки
- Модуль 8. Отрезковые статистики: RSQ, RMQ
Taught by
Горбачев Егор Андреевич
Tags
Related Courses
Information TheoryThe Chinese University of Hong Kong via Coursera Intro to Computer Science
University of Virginia via Udacity Analytic Combinatorics, Part I
Princeton University via Coursera Algorithms, Part I
Princeton University via Coursera Divide and Conquer, Sorting and Searching, and Randomized Algorithms
Stanford University via Coursera