Уважаемые посетители ! Мы рады приветствовать Вас на нашем сайте!  

На страницах сайта представлены все материалы курса "Алгоритмы и структуры данных", который изучается студентами факультета Прикладной информатики Кубанского государственного аграрного университета по специальностям 080801.65  - "Прикладная информатика (по областям),  230201.65 - "Информационные системы и технологии" и  080500.62 - "Бизнес-информатика"

Дисциплина читается студентам   специальностей “Прикладная информатика (по областям)” и “Информационные системы и технологии” на втором курсе  в третьем семестре, а студентам специальности "Бизнес-информатика" - на первом курсе во втором семестре.  

Форма отчетности для всех специальностей - курсовой проект и экзамен.

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

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

Основные разделы дисциплины:

•1. Структуры данных.

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

•3.  Алгоритмы сортировки. 

 

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

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

В третьем разделе рассматриваются понятие и алгоритмы сортировки. Изучаются методы и алгоритмы сортировки массивов. Конкретно -   сортировка с помощью прямого выбора, прямой вставки, прямого обмена как прямые методы, а  сортировка Шелла (включений с уменьшающимися расстояниями) и  быстрая сортировка - как улучшенные.

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

Для всех изучаемых структур данных, методов поиска, оптимизации поиска, сортировок  алгоритмы реализации в теоретичексой (лекционной) части курса представлены в псевдокоде, в практической части курса - на языке программирования С++.

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