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

Материал из DOM

Перейти к: навигация, поиск

На этой странице размещены материалы, которые я написал несколько лет назад. Стимулом к написанию стали события, когда я прочитал запоем несколько интересных книжек по посвященных основам программирования, алгоритмике и построению грамотных структур данных. Мне стало обидно, что в то время, когда я учился программированию, меня (вообще, наш поток) третировали дурацкими задачами, совершенно не развивавшими культуру программирования, не уделявшими внимания вопросам грамотного проектирования кода, оптимизации. Многие интересные вещи связанные с комбинаторикой, графами были пройдены крайне мерзко (я до сих пор удивляюсь, почему я попал в мир программирования). Запал энтузиазма горел несколько месяцев, в течении которых я писал эти учебные материалы, планируя то, как я мог бы организовать подобный курс. Спустя годы я смотрю на результаты тех лет несколько скептически, появилось достаточное количество книг, статей, написанных лучше и более системно. С другой стороны я горжусь проделанной работой. Все же текст в 200 000 знаков (многие из которых переписаны наново) - это чувствительно (можно было бы даже книжку издать - тонюсенькую, правда).

Данные материалы апробированы на всего двух группах, в промежутке между которыми я вносил крупные изменения. В любом случае я надеюсь, что кому-нибудь данные материалы пригодятся.


[править] Теория

Введение. Анализ алгоритмов. Качество. Оценка временных затрат. СДА Док часть 1

Работа с массивами. Сортировки и поиск. Простые алгоритмы сортировок. СДА Док часть 2

Усовершенствованные алгоритмы сортировки. СДА Док часть 3

Рекурсия. СДА Док часть 4

Динамические структуры данных. СДА Док часть 5

Общие правила и рекомендации к разработке собственных контейнерных структур данных. СДА Док часть 6

Деревья. Основные алгоритмы над деревьями. СДА Док часть 7

Графы и их основные сферы применения в информатике. СДА Док часть 8

Классические задачи программирования. СДА Док часть 9

Порождение и перебор комбинаторных объектов. СДА Док часть 10

Рекуррентные уравнения. Динамическое программирование. СДА Док часть 11


[править] Лабораторные и практические работы

Данная работа посвящена использованию средств двунаправленных динамических списков и общим принципам проектирования контейнеров. Лабораторная работа 1

Тема: простейшие алгоритмы сортировок (сортировка методом пузырька, вставки, выборки) Лабораторная работа 2

Проектирования контейнеров и собственных структур данных. Лабораторная работа 3

Данная работа будет посвящена рекурсии и ее применению. Лабораторная работа 4

Задания по теме поиск и усовершенствованные алгоритмы сортировки. Лабораторная работа 5

Усовершенствованные алгоритмы сортировок. Лабораторная работа 6

Задания к практической работе (Исключения и Рекурсия). Лабораторная работа 7

Простейшие алгоритмы сортировки: сортировка методом прямого обмена, прямой выборкой и вставкой. Лабораторная работа 8

Данная тема продолжает знакомство с динамическими структурами данных (стек, очередь). Лабораторная работа 9

Данная работа посвящена созданию и использованию контейнеров – классов которые служат для хранения и управления множеством объектов. Лабораторная работа 10

Сегодняшняя работа посвящена работе с деревьями. Лабораторная работа 11


Вопросы к зачету

Subscribe Now!

 

ObMachine projects & articles (java, flash, flex, php, ...)  -- black-zorro.com