23
УТВЕРЖДАЮ Зам. директора Института кибернетики по учебной работе ________________ С.А. Гайворонский «___»_____________2011 г. РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ Структуры данных и анализ алгоритмов НАПРАВЛЕНИЕ ООП 230100 Информатика и вычислительная техника ПРОФИЛИ ПОДГОТОВКИ Технологии разработки программного обеспечения КВАЛИФИКАЦИЯ (СТЕПЕНЬ) бакалавр БАЗОВЫЙ УЧЕБНЫЙ ПЛАН ПРИЕМА 2011 г. КУРС 3 СЕМЕСТР 5,6 КОЛИЧЕСТВО КРЕДИТОВ 8 (6/2)кредитов ECTS ПРЕРЕКВИЗИТЫ Б2.Б1, Б2.В3.1, Б2.В1.1 КОРЕКВИЗИТЫ Б3.Б5 ВИДЫ УЧЕБНОЙ ДЕЯТЕЛЬНОСТИ И ВРЕМЕННОЙ РЕСУРС: Лекции 36 час. Лабораторные занятия 54 час. Курсовая работа 18 час АУДИТОРНЫЕ ЗАНЯТИЯ 108 час. САМОСТОЯТЕЛЬНАЯ РАБОТА 108 час. ИТОГО 216час. ФОРМА ОБУЧЕНИЯ очная ВИД ПРОМЕЖУТОЧНОЙ АТТЕСТАЦИИ экзамен, зачет, диф.зачет ОБЕСПЕЧИВАЮЩЕЕ ПОДРАЗДЕЛЕНИЕ кафедра ОСУ ЗАВЕДУЮЩИЙ КАФЕДРОЙ ОСУ ____________ Силич В.А. РУКОВОДИТЕЛЬ ООП ______________ Рейзлин В.И. ПРЕПОДАВАТЕЛЬ ____________ Фофанов О.Б.

portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

  • Upload
    votram

  • View
    226

  • Download
    5

Embed Size (px)

Citation preview

Page 1: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

УТВЕРЖДАЮЗам. директора Института кибернетики

по учебной работе

________________ С.А. Гайворонский«___»_____________2011 г.

РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ Структуры данных и анализ алгоритмов

НАПРАВЛЕНИЕ ООП 230100 Информатика и вычислительная техника

ПРОФИЛИ ПОДГОТОВКИ Технологии разработки программного обеспечения

КВАЛИФИКАЦИЯ (СТЕПЕНЬ) бакалаврБАЗОВЫЙ УЧЕБНЫЙ ПЛАН ПРИЕМА 2011 г.КУРС 3 СЕМЕСТР 5,6КОЛИЧЕСТВО КРЕДИТОВ 8 (6/2)кредитов ECTSПРЕРЕКВИЗИТЫ Б2.Б1, Б2.В3.1, Б2.В1.1 КОРЕКВИЗИТЫ Б3.Б5

ВИДЫ УЧЕБНОЙ ДЕЯТЕЛЬНОСТИ И ВРЕМЕННОЙ РЕСУРС:Лекции 36 час.Лабораторные занятия 54 час.Курсовая работа 18 часАУДИТОРНЫЕ ЗАНЯТИЯ 108 час.САМОСТОЯТЕЛЬНАЯ РАБОТА 108 час.

ИТОГО 216час.

ФОРМА ОБУЧЕНИЯ очная

ВИД ПРОМЕЖУТОЧНОЙ АТТЕСТАЦИИ экзамен, зачет, диф.зачетОБЕСПЕЧИВАЮЩЕЕ ПОДРАЗДЕЛЕНИЕ кафедра ОСУ

ЗАВЕДУЮЩИЙ КАФЕДРОЙ ОСУ ____________ Силич В.А.

РУКОВОДИТЕЛЬ ООП ______________ Рейзлин В.И.

ПРЕПОДАВАТЕЛЬ ____________ Фофанов О.Б.

2011 г.

Page 2: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

1. ЦЕЛИ ОСВОЕНИЯ ДИСЦИПЛИНЫ

Целями преподавания дисциплины являются: изучение основных абстрактных типов данных (АТД) (примитивные типы,

массивы, комбинированные типы, списки, стеки, очереди, деки, деревья, графы, хэш-таблицы) и статическая и динамическая реализации АТД

изучение способов описания алгоритмов и методов исследования и оценки их пространственной и временной сложности;

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

Поставленные цели полностью соответствуют целям (Ц1-Ц5) ООП.

Код цели

Формулировка цели

Ц1

Подготовка выпускников к междисциплинарным научным исследованиям для решения задач, связанных процессами анализа, прогнозирования, моделирования и создания информационных процессов, технологий в рамках профессионально-ориентированных информационных систем (в экономике).

Ц2Подготовка выпускников к автоматизированному решению

прикладных задач; созданию новых конкурентоспособных информационных технологий и систем.

Ц3

Подготовка выпускников к информационному обеспечению прикладных процессов; внедрению, адаптации, настройке и интеграции проектных решений по созданию ИС, сопровождению и эксплуатации современных ИС.

Ц4

Подготовка выпускников к организационно-управленческой деятельности при выполнении междисциплинарных проектов в профессиональной области, в том числе в интернациональном коллективе, умение работать в команде

2. МЕСТО ДИСЦИПЛИНЫ В СТРУКТУРЕ ООП

Дисциплина «Типы и структуры данных» (Б2.Б9) является базовой профессионального цикла (Б3).

Для её успешного усвоения необходимы: знания базовых понятий информатики и вычислительной техники, хотя бы одного

языка программирования, представления и преобразования информации в компьютере; умения программировать на языке ООПвладение навыками работы на персональном компьютере.Пререквизитами данной дисциплины являются дисциплина «Информатика» Б2.Б1,

«Линейная алгебра и аналитическая геометрия» (Б2.В3.1), «Дискретная математика» (Б2.В1.1),

Кореквизиты – «Операционные системы» (Б3.Б3).

3. РЕЗУЛЬТАТЫ ОСВОЕНИЯ ДИСЦИПЛИНЫ

Page 3: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

В результате освоения дисциплины студент должен: Знать:

- способы представление информации в памяти компьютера;- альтернативные способы описания алгоритмов;- методы исследования эффективности алгоритмов:- алгоритмы сортировки информации- базовые типы данных и операции с ними;- основные абстрактные типы данных (АТД) и их реализации;- поисковые алгоритмы и области их использования;- способы представления информации в виде деревьев;- принципы хеширования данных.

уметь: - формализовать вычислительные и логические задачи;- представлять алгоритмы вычислительных и логических задач;- исследовать эффективность алгоритмов;- выбирать для сортировки данных эффективные алгоритмы;- осуществлять выбор эффективных алгоритмов поиска;- структурировать информацию с использованием различных АТД;- реализовывать выбранный алгоритм на языке программировании;- использовать образовательные ресурсы по дисциплине, представленные в сети

ИНТЕРНЕТ.владеть навыками исследования эффективности алгоритмов различными способами,представления данных различными способами и выбора оптимальных структур данных для заданной функциональности систем обработки данных, оценить эффективностьиспользования выбранных структур данных для решения задачи в зависимости отдоступных вычислительных ресурсов.

В процессе освоения дисциплины у студентов развиваются следующие компетенции:

1. Универсальные (общекультурные): - способен использовать, обобщать и анализировать информацию, ставить цели и

находить пути их достижения в условиях формирования и развития информационного общества (ОК-1 ФГОС);

- способен самостоятельно приобретать и использовать в практической деятельности новые знания и умения, стремится к саморазвитию (ОК-5 ФГОС);

- способность работать с информацией в глобальных компьютерных сетях (ОК-8 ФГОС).

2. Профессиональные:- способен использовать основные законы естественнонаучных дисциплин в

профессиональной деятельности и эксплуатировать современное электронное оборудование и информационно-коммуникационные технологии в соответствии с целями образовательной программы бакалавра (ПК-3 ФГОС);

- способен моделировать и проектировать структуры данных и знаний, прикладные и информационные процессы (ПК-9);

- способен применять к решению прикладных задач базовые алгоритмы обработки информации, выполнять оценку сложности алгоритмов, программировать и тестировать программы (ПК-10);

- способен применять методы анализа прикладной области на концептуальном, логическом, математическом и алгоритмическом уровнях (ПК-17 ФГОС).

Page 4: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

4. СТРУКТУРА И СОДЕРЖАНИЕ ДИСЦИПЛИНЫ

4.1 Аннотированное содержание разделов дисциплины: 1. Основные понятия структур данных

Концепция типа данных. Простейшие типы данных. Простейшие стандартные типы данных. Ограниченные типы (диапазоны). Массивы. Записи. Записи с вариантами. Множества. Представление массивов, записей и множеств. Последовательности (элементарные операции, буферизация, стандартные ввод и вывод).

2. Данные с динамической структурой Линейные списки: основные операции, упорядоченные списки и перестройка

списков. Стеки, очереди, деки, нелинейные структуры данных, иерархические списки, мультисписки. Реализация перечисленных структур данных. Стандартные классы в ООП, поддерживающие динамические структуры

3. Алгоритмы поискаЗадачи поиска и кодирования (сжатия) данных. Кодовые деревья, оптимальные

префиксные коды, исчерпывающий поиск. Линейный поиск. Поиск делением пополам (двоичный поиск). Поиск в таблице. Прямой поиск строки. Поиск в строке (алгоритмы Кнута, Мориса и Прата). Алгоритмы Боуэра-Мура. Алгоритмы Рабина-Карпа.

4. Алгоритмы сортировкиАнализ сложности и эффективности алгоритмов поиска и сортировки. Оценка

временной и пространственной сложности алгоритмов на основе асимптотических соотношений (О –и Ω нотации). Порядковые статистик. Сортировка массивов: прямым включением, прямым выбором и прямым обменом. Улучшенные методы сортировки: включениями с уменьшающимися расстояниями, с помощью дерева, разделением. Нахождение медианы. Сравнение методов сортировки массивов. Файлы: организация и обработка. Сортировка файлов: прямое слияние, естественное слияние, сбалансированное многопутевое слияние, многофазная сортировка, распределение начальных серий.

5. ДеревьяВведение в теорию графов. Деревья и леса. Бинарные деревья. Представление

деревьев в памяти с помощью массивов и динамических структур. Обходы деревьев. Т-деревья и алгоритмы их обработки. Деревья оптимального поиска. Сбалансированные по высоте (АВЛ) и рандомизированные деревья поиска и алгоритмы работы с ними. Восстановление сбалансированности, левое и правое вращение. 2-3 деревья, черно-красные деревья. Сильноветвящиеся (B-) деревья. Поиск информации, удаление и вставка узлов в сильноветвящихся деревьях.

6. Быстрый доступ к даннымХеширование данных. Способы вычисления хеш-функций. Разрешение коллизий.

Линейное, квадратичное опробование. Метод цепочек, двойное хеширование. Оценка качества хеш-функций. Инвертированные индексы. Битовые карты

4.2 Структура дисциплины по разделам и формам организации обучения приведена в таблице 1.

Таблица 1Структура дисциплины

по разделам и формам организации обученияНазвание раздела/темы Аудиторная работа (час) СРС

(час)Колл,

Контр.Р.ИтогоЛекции Практ./сем.

занятияЛаб. зан.

1. Основные понятия 4 - 6 6 14

Page 5: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

структур данных

2 Данные с динамической структурой

4 - 6 6 14

3. Алгоритмы поиска 4 - 10 10 22

4. Алгоритмы сортировки 8 - 12 12 Контр.Р. 28

5. Деревья 12 - 12 12 Контр.Р. 32

6. Быстрый доступ к данным

4 8 8 18

6. Курсовая работа 18 54 52

Итого 36 - 72 108 216

Page 6: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

5. ОБРАЗОВАТЕЛЬНЫЕ ТЕХНОЛОГИИ

В таблице 2 приведено описание образовательных технологий, используемых в данном модуле.

Таблица 2Методы и формы организации обучения (ФОО)

ФОО

Методы Лекц. Лаб. раб. Тр*.,

Мк** СРС К. пр.

IT-методы √ √ √Работа в командеCase-study √ √ИграМетоды проблемного обучения. √

Обучение на основе опыта √

Опережающая самостоятельная работа √

Проектный метод Поисковый метод √Исследовательский метод √Другие методы

*-Тренинг, **-Мастер-класс

6. ОРГАНИЗАЦИЯ И УЧЕБНО-МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ САМОСТОЯТЕЛЬНОЙ РАБОТЫ СТУДЕНТОВ

6.1 Самостоятельная работа студентов (СРС) состоит из текущей СРС. Текущая СРС – работа с лекционным материалом, подготовка к лабораторным

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

Творческая проблемно-ориентированная самостоятельная работа (ТСР) – поиск, анализ, структурирование информации по темам индивидуальных курсовых заданий.

6.2 Содержание курсовой работыЦелью курсовой работы является закрепление материала, изучаемого в предыдущем семестре по дисциплине «Типы и структуры данных»: программирование реальных заданий с использованием наиболее распространенных в информационных технологиях структур данных и алгоритмов их обработки.

Курсовая работа включает следующие разделы: 1. Моделирование абстрактных типов данных (АТД) для различных реализаций (табличное, списковое, комбинированное и тд)2. Поиск информации в различных структурах данных с использованием классических алгоритмов поиска в текстовой информации3. Исследование эффективности алгоритмов сортировок для различных структур и размерностей данных4. Реализация структур данных типа дерево и типовые алгоритмы их обработки5. Реализация функций расстановки (хеширование) и различных методов разрешения коллизий

Page 7: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

Каждому студенту выдается индивидуальное задание (по в группе) по

соответствующему разделу. Выбор языка программирования, как инструментария

реализации структур и алгоритмов остается открытой по выбору студента

Рассматриваются следующие предметные области, для каждой из которых должна быть

разработана соответствующая информационная структура

1. Складское хозяйство предприятия

2. Аптека

3. Туристическое агентство

4. Областная больница - больные

5. Гостиничный комплекс с резервированием номеров и услуг

6. Отдел кадров предприятия

7. Агентство по продаже недвижимости

8. и тд

Пример задания

1. Моделирование абстрактных типов данных (АТД) для различных реализаций. Разработать алгоритм и соответствующее приложение, моделирующее вычислительную систему с постоянным шагом по времени (дискретное время) в соответствии с вариантом индивидуального задания с использованием конкретных реализаций АТД стек и очередь.

Варианты задач (номер задачи)1. Система состоит из процессора P, трёх очередей F0, F1, F2 и стека S (рис.1.4). В систему поступают запросы. Запрос можно представить записью:Type

TInquiry= record Name: String[10]; имя запроса Time: Word; время обслуживания

P: Byte;приоритет задачи 0-высший, 1-средний, 2-низший

end;Поступающие запросы ставятся в соответствующие приоритетам очереди. Сначала обрабатываются задачи из очереди F0. Если она пуста, можно обрабатывать задачи из очереди F1. Если и она пуста, то можно обрабатывать задачи из очереди F2. Если все очереди пусты, то система находится в ожидании поступающих задач (процессор свободен), либо в режиме обработки предыдущей задачи (процессор занят). Если поступает задача с более высоким приоритетом, чем обрабатываемая в данный момент, то обрабатываемая помещается в стек и может обрабатываться тогда и только тогда, когда все задачи с более высоким приоритетом уже обработаны.

Page 8: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

Рис.1.4

2. Поиск информации в различных структурах данных

Изучение алгоритмов поиска контекста в больших объемах текстовой информации и закрепление навыков в проведении сравнительного анализа алгоритмов.1. Реализовать алгоритмы поиска:

КМП – алгоритм (нечетный вариант) Алгоритм Боуэра-Мура (четный вариант) Алгоритм Рабина-Карпа (кратные 3 варианты)

2. Построить графики зависимости количества операций сравнения от количества символов в массиве.3. Определить временную сложность алгоритма и сравнить с экспериментальными исследованиями Исходные наборы данных – текстовые массивы или файлы типа соответствующего варианта (по варианта). и тд

6.3 Контроль самостоятельной работы

Оценка результатов самостоятельной работы организуется как единство двух форм: самоконтроль и контроль со стороны преподавателя.

Самоконтроль в обучающей программе, контроль знаний, полученных с помощью обучающей программы (20 контролирующих тестов).

Рубежный контроль в виде тестов по теоретической части. По результатам текущего и рубежного контроля формируется допуск студента к

экзамену. Экзамен проводится в письменной или устной форме.

Генератор задач

О

Ч

Е

Р

Е

О

Ч

Е

Р

Е

О

Ч

Е

Р

Е

P1Стек S1

Page 9: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

6.4 Учебно-методическое обеспечение самостоятельной работы студентовДля самостоятельной работы студентов используются сетевые образовательные

ресурсы, пособия и учебники в электронной форме.

7. СРЕДСТВА (ФОС) ТЕКУЩЕЙ И ИТОГОВОЙ ОЦЕНКИ КАЧЕСТВА ОСВОЕНИЯ ДИСЦИПЛИНЫ

Для организации текущего контроля полученных студентами знаний по данной дисциплине проводится 2 тестирования. Образец контролирующего теста приведен ниже (ПРИЛОЖЕНИЕ 1) . Для проведения экзамена предлагаются 34 вопроса. Экзаменационный билет содержит 4 пункта.

Page 10: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

8. УЧЕБНО-МЕТОДИЧЕСКОЕ И ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ

Основная литература1. Т.Кормен и др. Алгоритмы. Построение и анализ. М. Изд-во "Вильямс", 2007 г2. Цапко И. В. Структуры и алгоритмы обработки данных : [учеб. пособие для студ.

вузов] / И. В. Цапко ; Том. политехн. ун-т. – Томск : Изд-во Том. политехн. ун-та, 2007.

3. Альфред Ахо, Джон Э. Хопкрофт, Д. Ульман Структуры данных и алгоритмы. М., Изд-во "Вильямс", 2000 г.

4. Н. Вирт Алгоритмы + структуры данных = программы. М., "Мир", 1985г.5. Н. Вирт Алгоритмы и структуры данных. М., Изд-во "Вильямс", 1998г.6. Д. Кнут. Искусство программирования для ЭВМ. Т.1. Основные алгоритмы. М.,

"Мир", 1976 г., переиздание - М., Изд-во "Вильямс", 2000г.7. Д. Кнут. Искусство программирования для ЭВМ. Т.3. Сортировка и поиск. М.,

"Мир", 1978 г., переиздание - М., Изд-во "Вильямс", 2000 г.

Дополнительная литература1. Уильям Топп, Уильям Форд. Структуры данных в С++. М., Изд-во "Бином", 2000 г.2. Вирт Н. Алгоритмы и структуры данных. – М.: Мир, 1989. – 360с.3. Мейер Б. Методы программирования. Том 1 и 2. – М., Мир, 1982. – 356 и 368с..4. Гудман С., Хидетниеми С. Введение в разработку и анализ алгоритмов. – М.: Мир,

1981.Программное обеспечение и Internet-ресурсы:

1. Электронные курсы лекцийa. http://www.intuit.ru/department/algorithms/staldata/b. http://guap.ru/dept04/caf46/textbooks/str_alg/index.htm

2. Среда разработки Java SE 6 Update 233. Визуальные IDE Java IntelliJ IDEA , Eclipse4. Web-ресурсы

a. http://www.informatics.susx.ac.uk/courses/dats/notes/html/index.html b. http :// rain . ifmo . ru / cat / view . php / vis c. http://informatics.mccme.ru/moodle /

9. МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ

Лабораторные работы выполняются в компьютерном классе, оснащенном 10-ю компьютерами на базе процессоров Intel Core 4 Duo.

Программа составлена на основе Стандарта ООП ТПУ в соответствии с требованиями ФГОС по направлению 230100 «Информатика и вычислительная техника» и профилю подготовки «Технологии разработки программного обеспечения».

Программа одобрена на заседании кафедры оптимизации систем управления

(протокол ____ от «___» _______ 2011 г.).

Автор Фофанов О.Б.

Рецензент Марухина О.В.

Page 11: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

ПРИЛОЖЕНИЕ 1

Томский политехнический университетКафедра оптимизации систем управления

Направление 230100 – «Информатика и ВТ»;Дисциплина Структуры данных и анализ алгоритмов

Т Е С Т 1по теме «Сортировка»

В А Р И А Н Т 1

Фамилия студента____________________________________

Группа _______________

Даны три условия окончания просеивания при сортировке прямым включением.

Найдите среди них лишнее.

1. найден элемент a(i) с ключом, меньшим чем ключ у x;

2. найден элемент a(i) с ключом, большим чем ключ у x (верный);

3. достигнут левый конец готовой последовательности.

Какой из критериев эффективности сортировки определяется формулой

M=0,01*n*n+10*n ?

1. число сравнений (верный);

2. время, затраченное на написание программы;

3. количество перемещений;

4. время, затраченное на сортировку.

Page 12: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

Томский политехнический университетКафедра оптимизации систем управления

Направление 230100 – «Информатика и ВТ»;Дисциплина Структуры данных и анализ алгоритмов

ТЕСТ 2

по теме «Деревья»

В А Р И А Н Т 2Фамилия студента____________________________________Группа _______________

При обходе дерева

слева направо получаем последовательность…

1. отсортированную по убыванию;

2. неотсортированную (верный);

3. отсортированную по возрастанию.

При обходе дерева слева направо его элемент заносится в массив…

1. при втором заходе в элемент (верный);

2. при первом заходе в элемент;

3. при третьем заходе в элемент.

Page 13: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

Дисциплина « Структуры данных и анализ алгоритмов» Число недель – 18Институт кибернетики Кол-во кредитов – 8 (6/2)Кафедра оптимизации систем управления

Лекции, час – 36Семестр 5,6 Лаб. работы, час. – 72Группы 8B13 Всего аудит. работы, час. – 108

Самостоятельная. работа, час. – 108ВСЕГО, час. – 216

Рейтинг-план освоения дисциплины « Типы и структуры данных»

Нед

ели

Текущий контрольТеоретический материал Практическая деятельность

Название раздела Темы лекций Контролир. материал

Баллы Название лаб. работ БаллыИндивид. задание Баллы Итого

1

1. Основные понятия структур данных

Концепция типа данных. Простейшие типы данных. Простейшие стандартные типы данных. Ограниченные типы (диапазоны). Массивы. Записи. Записи с вариантами. Множества. Представление массивов, записей и множеств. Последовательности (элементарные операции, буферизация, стандартные ввод и вывод).

1

1.Работа с массивами и записями

2 3

2 1

3 2 Данные с динамической структурой

2.1 Линейные списки: основные операции, упорядоченные списки и перестройка списков.

1 2.1 Работа со списками 2 Работа над курсовой работой

3

Page 14: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

4

2.2 Стеки, очереди, деки, нелинейные структуры данных, иерархические списки, мультисписки

Тест 1

12

2.2 Работа со связанными списками

2

4 5Работа над курсовой

работой

5

3. Алгоритмы поиска

3.1Кодовые деревья, оптимальные префиксные коды, исчерпывающий поиск. Линейный поиск. Поиск делением пополам (двоичный поиск). Поиск в таблице. Прямой поиск строки.

1 2.3 Работа с деками 2Работа над курсовой

работой4 4

6

3.2. Поиск в строке (алгоритмы Кнута, Мориса и Прата). Алгоритмы Боуэра-Мура. Алгоритмы Рабина-Карпа.

13.1 Исследование алгоритмов линейного

поиска2

Работа над курсовой работой

4 4

7

4.Алгоритмы сортировки 4.3 Анализ сложности и

эффективности алгоритмов поиска и сортировки. Оценка временной и пространственной сложности алгоритмов на основе асимптотических соотношений (О –и Ω нотации). Порядковые статистик.

Контр. раб.12

4.1 Исследование сортировки подсчетом

2Работа над курсовой

работой4 5

8 4.4. Сортировка массивов: прямым включением, прямым выбором и прямым обменом. Улучшенные методы сортировки: включениями с уменьшающимися расстояниями, с помощью дерева, разделением. Нахождение медианы. Сравнение методов сортировки массивов

1 4.2 Исследование сортировок прямым выбором и обменом

2 Работа над курсовой работой

4 3

Page 15: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

94.5 Файлы: организация и обработка.

Сортировка файлов: прямое слияние, естественное слияние, сбалансированное многопутевое слияние, многофазная сортировка, распределение начальных серий.

Тест 2 1

4.3 Исследование многофазной сортировки

1Работа над курсовой

работой4 4

10 1 1Работа над курсовой

работой4

Всего по контрольной точке (аттестации) 1 22

11

5. Деревья

5.1 Введение в теорию графов. Деревья и леса. Бинарные деревья. Представление деревьев в памяти с помощью массивов и динамических структур. Обходы деревьев.

15.1 Обходы деревьев.

Прошитые деревья2

Работа над курсовой работой

4 3

125.2 Обходы деревьев. Т-деревья и

алгоритмы их обработки. Деревья оптимального поиска.

Тест 3.12 5.2 Линейное

представление бинарных деревьев

2Работа над курсовой

работой4 5

13

5.3 Сбалансированные по высоте (АВЛ) и рандомизированные деревья поиска и алгоритмы работы с ними.

1 2Работа над курсовой

работой4 3

14

5.4Восстановление сбалансированности, левое и правое вращение. 2-3 , 3-4 деревья,

1

5.3 Динамическое представление Т-

деревьев2

Работа над курсовой работой

4 3

15

5.5 Черно-красные деревья. Алгоритмы восстановления сбалансированности по черной высоте

Контр. раб

1

5.4. Динамическое представление черно-

красных деревьев2

Работа над курсовой работой

4 3

Всего по контрольной точке (аттестации) 2 53

16

5.6Сильноветвящиеся (B-) деревья. Поиск информации, удаление и вставка узлов в сильноветвящихся деревьях.

1Работа над курсовой

работой4 1

Page 16: portal.tpu.ruportal.tpu.ru/fond/download_doc/10248/SDAA.docx  · Web viewTime: Word; {время обслуживания} P: Byte;{приоритет задачи 0-высший,

17

6. Быстрый доступ к данным

6.2 Хеширование данных. Способы вычисления хеш-функций. Разрешение коллизий.

Тест 41

6.1 Исследование эффективности хеш-

функций.

2

Работа над курсовой работой

4 3

18

6.3 Линейное, квадратичное опробование. Метод цепочек, двойное хеширование. Оценка качества хеш-функций. Инвертированные индексы. Битовые карты

1Работа над курсовой

работой4 3

Итоговая текущая аттестация 60Экзамен, Защита курсовой работы 40

Итого баллов по дисциплине 100

«____» ________ 2011. г.

Зав. кафедрой ОСУ Силич В.А.

Преподаватель Фофанов О.Б.