- •Санкт-Петербург – 2011
- •Раздел 1. Характеристики, структура и содержание учебных занятий
- •Цели и результаты учебных занятий.
- •Требования к подготовленности обучающегося к освоению содержания учебных занятий (пререквизиты).
- •Перечень формируемых компетенций (результаты обучения)
- •Знания, умения, навыки, осваиваемые обучающимся.
- •Перечень и объём активных и интерактивных форм учебных занятий.
- •Организация учебных занятий.
- •1.6.1. Трудоёмкость, объёмы учебной работы и наполняемость
- •1.6.2. Виды, формы и сроки текущего контроля успеваемости и промежуточной аттестации
- •1.7. Структура и содержание учебных занятий
- •Раздел 2. Обеспечение учебной дисциплины
- •2.1. Методическое обеспечение
- •2.1.1. Методическое обеспечение аудиторной работы
- •2.1.2. Методическое обеспечение самостоятельной работы
- •2.1.3. Методика проведения текущего контроля успеваемости, промежуточной аттестации и критерия оценивания
- •2.3.2. Требования к аудиторному оборудованию, в том числе к неспециализированному компьютерному оборудованию и программному обеспечению общего пользования
- •2.4.2. Список дополнительной литературы
- •2.4.3. Перечень иных информационных источников
- •Раздел 3. Процедура разработки и утверждение рабочей программы учебной дисциплины
- •Иные документы об оценке качества рабочей программы
- •Внесение изменений в рабочую программу
- •Приложение с1-1
- •1. Еженедельный отчет студента
- •2. Регулярный контроль на аудиторном занятии
- •3. Итоговый контроль на зачетных и экзаменационных мероприятиях
- •Приложение с1-2
- •Приложение с1-3
- •1. Файлы
- •2. Процедуры и функции
- •3. Циклы, массивы, вычисления
- •04. Множества, строки, записи
- •5. Логические выражения и операторы ветвления.
- •Приложение с1-4
- •Ооп: инкапсуляция
- •Ооп: полиморфизм
- •Приложение с1-5
- •Приложение с2-1
- •1. Еженедельный отчет студента
- •2. Регулярный контроль на аудиторном занятии
- •3. Итоговый контроль на зачетных и экзаменационных мероприятиях
- •Приложение с2-2
- •Приложение с2-3
- •1. Файлы
- •2. Процедуры и функции
- •3. Циклы, массивы, вычисления.
- •4. Множества, строки, записи
- •5. Графика
- •6. Сортировки (быстрая сортировка — имеется ввиду нерандомизированная):
- •7. Рекурсия
- •8. Разработка и программная реализация алгоритмов
- •9. Перебор
- •10. Бинарные деревья и поиск
- •11. Перестановки
- •12. Графы
- •13. Стек, очередь, очередь с приоритетатами
- •14. Списки, хеш-таблицы, сбалансированные деревья.
- •Приложение с2-4
- •Приложение с2-5
9. Перебор
http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D0%BB%D0%BD%D1%8B%D0%B9_%D0%BF%D0%B5%D1%80%D0%B5%D0%B1%D0%BE%D1%80
http://algolist.manual.ru/maths/combinat/sequential.php
Упражнение 9.01. [0] Расставить по шахматной доске 8 ферзей так чтобы они не били друг друга, генерировать их таким образом, чтобы первый ферзь ставился случайно (можно в первый ряд/строку)
Упражнение 9.02. [0] Магический квадрат — это матрица размера 3*3, где в ячейках стоят целые числа из интервала [1..9].
С помощью перебора необходимо сформировать магический квадрат. Первая цифра ставиться в середину, выбирается случайным образом.
Упражнение 9.03. [0] Дан случайный набор чисел, разбить их на две группы минимизировав разницу суммарного веса каждой
Упражнение 9.04. [1] Решить задачу о рюкзаке: дан список вещей имеющих вес и стоимость. Набрать в лимит веса L вещей так, чтобы сформированный рюкзак имел максимальную стоимость. "Пилить" вещь нельзя
Упражнение 9.05. [1] Дан лабиринт на плоскости, состоящий из N*N комнат, в каждой комнате может быть от 0 до 4х дверей расположенных по различным сторонам света крайние комнаты дверей за пределы квадрата не имеют. Найти путь из левого верхнего угла в правый нижний с помощью рекурсии
Упражнение 9.06. [2] По данной корректной позиции игры крестики-нолики 3x3 подсчитать вероятность выигрыша первого игрока (отношение благоприятных исходов к полному количеству)
Упражнение 9.07. [2] Дана булева формула с N переменными объединенными связками AND, OR, NOT. Проверить, есть ли набор таких переменных, что формула принимает значение true.
Упражнение 9.08. [2] Дана доска 3*3, играем по правилам игры в 15. Решить перемешанную комбинацию, либо выяснить что она не имеет решения.
10. Бинарные деревья и поиск
http://ru.wikipedia.org/wiki/%D0%94%D0%B2%D0%BE%D0%B8%D1%87%D0%BD%D0%BE%D0%B5_%D0%B4%D0%B5%D1%80%D0%B5%D0%B2%D0%BE_%D0%BF%D0%BE%D0%B8%D1%81%D0%BA%D0%B0
http://www.rsdn.ru/article/alg/binstree.xml
http://rk6.bmstu.ru/electronic_book/posapr/zadanpo/bintree.htm
http://rain.ifmo.ru/cat/view.php/vis/trees/binary-search-2001
http://www.youtube.com/watch?v=cUHg0sob4Wc&feature=related
Упражнение 10.01. [0] Реализовать бинарный поиск в отсортированном массиве. Так же реализовать операции вставки и удаления с сохранением порядка.
Упражнение 10.02. [1] Реализовать бинарный поиск в массиве с использованием компаратора (корректную вставку, удаление)
Упражнение 10.03. [1] Реализовать объект "куча" - в массиве записано двоичное дерево, на позиции 2*n и 2*n + 1 стоят соответственно левый и правый ребенок. Должны быть операции добавления, удаления, поиск и обход (любой)
Упражнение 10.04. [2] В объекте "куча" реализовать три обхода описанных в википедии
11. Перестановки
http://ru.wikipedia.org/wiki/%D0%9F%D0%B5%D1%80%D0%B5%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0
http://algolist.manual.ru/maths/combinat/permutations.php
http://portal.tpu.ru/SHARED/n/NEN/Page_2/Page_8/Tab1/lek.pdf
Упражнение 11.01. [0] Найти ранг(степень) перестановки.
Упражнение 11.02. [0] Сгенерировать перестановку по номеру.
Упражнение 11.03. [0] Получить номер по перестановке.
Упражнение 11.04. [0] Найти количество циклов в перестановке и вывести их.
Упражнение 11.05. [1] Напечатать сколько возможно перестановок вида <цикл длины N1><цикл длины N2>.. и вывести их.
Упражнение 11.06. [1] Дан набор перестановок, упорядочить их по возрастанию.
Упражнение 11.07. [2] Сгенерировать все перестановки с циклами длины меньше N.
Упражнение 11.08. [2] Близость перестановки A к B есть сумма длин совпадающих циклов деленное на длину перестановки. Вычислить близость для двух заданных.