Ho Lee Fuk

Сенсей
🛡 МОДЕРАТОР 🛡
Регистрация
22 Февраль 2018
Сообщения
10.524
Автор: Калимулин

Название: Алгоритмы. Олимпиадное программирование (неполный) (2014)


Описание:

Вы узнаете, что такое олимпиадное программирование, и в чем заключаются особенности автоматической проверки алгоритмов. Вы познакомитесь с тестирующей системой Ejudge, в которой проходят все крупнейшие соревнования по спортивному программированию. Вы сможете на лету решать такие задачи, как разложение числа на цифры, на простые множители, делимость, арифметика остатков. Вы освоите классические алгоритмы и хитрые трюки для решения задач на обработку последовательностей, изучите различные методы сортировки, в том числе использующие тонкие

Преподователь: Калимулин Михаил Игоревич

По окончании курса Вы будете уметь:

- Легко решать задачи обработки матриц: линейный поиск, переворот, максимумы и минимумы.
- Приступите к основам высшего пилотажа в программировании – алгоритмам обработки графов, стеков и очередей.
- Полученных знаний и навыков Вам хватит, чтобы начать выступать на олимпиадах по программированию.

Модуль 1. Занятие №1. Знакомство

- Алгоритмы
- Тестирующая система

Модуль 2. Занятие №2. Типы данных и отладка

- Типы данных в Java
- Примитивные типы
- Объекты
- Классы-обертки
- BigInteger и BigDecimal
- Отладка

Модуль 3. Занятие №3. Решение задач из области арифметики

- Проверка на четность
- Немного теории
- Цифры числа
- Получение цифр числа
- Проверка на простоту
- Сумма делителей
- Количество делителей
- Разложение на простые множители

Модуль 4. Занятие №4. НОД(GCD) и НОК(LCM)

- Немного теории
- Немного о задачах

Модуль 5. Занятие №5. Однопроходные алгоритмы

- Чтение
- Сумма элементов
- Максимум из всех
- Максимум из четных
- Второй максимум
- Немного о задачах
- Чтение больших объемов данных
- Пример использования класса
- StreamTokenizer для быстрого чтения последовательности чисел

Модуль 6. Занятие №6. Массивы

- Создание массива
- Ввод (считывание) массива из N элементов
- Вывод всех элементов массива
- Поиск максимума
- Поиск индекса максимального
- Поиск индекса заданного числа в массиве
- Вывод массива в обратном порядке
- Косвенная адресация

Модуль 7. Занятие №7. Сортировка массива

- Сортировка выбором (метод минимума)
- Немного теории
- Метод сортировки обменами (метод пузырька)

Модуль 8. Занятие №8. Символы и строки в Java

- Символы
- Класс String
- Создание строки
- Чтение строки
- Длина строки
- Сравнение строк
- Добавление к строке
- Преобразование различных типов в строку и обратно
- Извлечение символа и подстроки
- Поиск в строке
- Функции замены
- Разворот строки

Модуль 9. Занятие №9. Двумерные массивы

- Создание и «стандартное» чтение
- Вывод массива в виде таблицы
- Cумма всех элементов
- Сумма элементов главной диагонали
- Неровные массивы

Модуль 10. Занятие №10. Графы I. Определения, хранение

- Немного теории
- Основные понятия
- Деревья
- Способы хранения графов
- Способ №0. Иногда граф можно вообще не хранить специальным образом
- Способ №1. Матрица смежности
- Способ №2. Список ребер
- Способ №3. Списки смежности

Модуль 11. Занятие №11. Стек и очередь

- Стек (Stack)
- Очередь (Queue)

Модуль 12. Занятие №12. Графы II. Поиск в ширину

- BFS (Breadth-first search)
- BFS в графе, заданном матрицей смежности G
- Применения алгоритма поиска в ширину
- Поиск кратчайших путей из данной
- Немного теории
- Поиск компонент связности

Складчик:

https://skladchik.com/threads/Специалист-Алгоритмы-Олимпиадное-программирование.22263/

Скачать:
Скрытое содержимое могут видеть только члены группы Премиум.


Скрытый контент для пользователей All-dar.
 

Создайте учетную запись или войдите, чтобы комментировать или скачивать материалы!

У вас должна быть учетная запись, чтобы оставлять комментарии

Зарегистрироваться

Создайте учетную запись. Это просто!

Авторизоваться

У вас уже есть аккаунт? Войдите здесь.

Сверху