Компьютерные науки

Структуры и алгоритмы компьютерной обработки данных

Программа об алгоритмизации и программировании на языке C++. Рассматриваются базовые типы данных, работа с указателями, динамическое выделение памяти, создание сложных структур и реализация рекурсивных алгоритмов поиска.
Студентов 3700 Выпускников 999 Для специалистов
690 ₽ 1 200 ₽
или любая сумма на ваше усмотрение
Вы можете оплатить любую сумму, чтобы поддержать наш проект и авторов программы. Объем услуг не зависит от размера вашей оплаты.
Темы:
Алгоритмы и сложность
Объем

36 час.
Длительность

30 дней
Нагрузка в неделю

9 час.
Формат обучения

Дистанционно (самостоятельно)
Описание В учебной программе предлагается комплексный подход к изучению структур данных и алгоритмов обработки информации с использованием языка C++. Разбираются методы работы со строками, массивами, файлами, а также тонкости динамического выделения памяти и построения сложных структур, таких как списки, очереди и деревья. Большое внимание уделено рекурсивным алгоритмам и поиску. Обучение охватывает последовательное погружение в программирование, от простейших конструкций C++ к динамическим структурам и сложным алгоритмам. Изучение включает теоретический материал, разбор примеров программного кода и решение задач возрастающей сложности с последующим тестированием. Учебная программа адресована начинающим программистам и студентам, которым необходимо сформировать прочный фундамент в алгоритмизации.
Цели
  • Сформировать базовые навыки алгоритмизации и структурирования данных.
  • Обучить принципам программирования на языке C++.
  • Показать практическое применение динамических структур и алгоритмов поиска.
Чему я научусь?
  • Работать с указателями, массивами и файловыми потоками.
  • Реализовывать динамические структуры данных: списки, стеки и бинарные деревья.
  • Применять алгоритмы поиска, сортировки и рекурсии при решении задач.

Авторы

Ваныкина Галина Владиславовна
Ваныкина Галина Владиславовна
Cпециализируется в области подготовки учителей информатики и программистов, кандидат педагогических наук, доцент кафедры информатики и методики обучения информатике Тульского государственного педагогического университета им. Л.Н.Толстого.\n
Сундукова Татьяна Олеговна
Сундукова Татьяна Олеговна
Cпециализируется в области подготовки IT-специалистов и программистов, кандидат педагогических наук, доцент кафедры информатики и методики обучения информатике Тульского государственного педагогического университета им. Л.Н.Толстого.
Чему я научусь?
  • Работать с указателями, массивами и файловыми потоками.
  • Реализовывать динамические структуры данных: списки, стеки и бинарные деревья.
  • Применять алгоритмы поиска, сортировки и рекурсии при решении задач.

Учебный план

Занятия
1 Предисловие
2 Типы данных в языке С++ В лекции рассматриваются понятие типов данных в языках программирования, приводится классификация типов данных в С++, излагаются... В лекции рассматриваются понятие типов данных в языках программирования, приводится классификация типов данных в С++, излагаются особенности представления базовых типов и операций над ними, рекомендации и правила выполнения операции преобразования базовых типов в С++. ещё
3 Подставляемые (встраиваемые) функции. Перегрузка функций В лекции рассматриваются понятия, объявление и использование в программах подставляемых и перегруженных функций в С++, механизмы... В лекции рассматриваются понятия, объявление и использование в программах подставляемых и перегруженных функций в С++, механизмы выполнения подстановки и перегрузки функций, рекомендации по повышению эффективности программ за счет перегрузки или подстановки функций. ещё
4 Рекурсивные функции В лекции рассматриваются понятие, определения и виды рекурсии, рекурсивные функции, этапы решения задач рекурсивными способами через... В лекции рассматриваются понятие, определения и виды рекурсии, рекурсивные функции, этапы решения задач рекурсивными способами через разработку рекурсивной триады, приводятся примеры решения задач рекурсивными способами. ещё
Рекурсивные функции тест для курса Структуры и алгоритмы компьютерной обработки данных 40 мин
5 Производные типы. Тип указатель: указатели на объекты В лекции рассматриваются определение и виды указателей, способы объявления, инициализация указателей на объекты, методы доступа к... В лекции рассматриваются определение и виды указателей, способы объявления, инициализация указателей на объекты, методы доступа к данным через указатели, размещение указателей и адресуемых ими объектов в памяти, операции над указателями. ещё
6 Тип указатель: указатели на функции В лекции рассматриваются определение указателя на функцию, способы объявления, адресуемость и обращение к функции через указатель,... В лекции рассматриваются определение указателя на функцию, способы объявления, адресуемость и обращение к функции через указатель, передачу фактических параметров указателю на функцию, использование указателя на функцию в качестве параметра функции. ещё
7 Решение задач с использованием указателей В лекции рассматриваются определение, реализация одиночного и многочисленного перенаправления с помощью указателей, определение, способы объявления, разработка... В лекции рассматриваются определение, реализация одиночного и многочисленного перенаправления с помощью указателей, определение, способы объявления, разработка и вызов функций с переменным числом параметров, дается обзор типичных ошибок, связанных с некорректным использованием указателей. ещё
Решение задач с использованием указателей тест для курса Структуры и алгоритмы компьютерной обработки данных 40 мин
8 Символьные данные и строки В лекции рассматриваются понятия и определения символьных данных и строк, сходство и отличия их внутреннего представления,... В лекции рассматриваются понятия и определения символьных данных и строк, сходство и отличия их внутреннего представления, способы объявления, инициализация строк, методы доступа к элементам строк, определение размера строк, различные способы организации ввода/вывода символьных данных и строк. ещё
9 Функции для работы со строками В лекции рассматриваются библиотечные функции, предназначенные для работы со строками, и особенности их выполнения, приведены примеры... В лекции рассматриваются библиотечные функции, предназначенные для работы со строками, и особенности их выполнения, приведены примеры использования таких функций при решении задач. ещё
10 Решение задач на обработку строк В лекции рассматриваются понятие, способы объявления, инициализация указателей на строки, применение функций обработки строк при решении... В лекции рассматриваются понятие, способы объявления, инициализация указателей на строки, применение функций обработки строк при решении типовых задач, особенности выполнения стандартных функций в контексте представления строк и указателей на строки. ещё
Решение задач на обработку строк тест для курса Структуры и алгоритмы компьютерной обработки данных 40 мин
11 Массивы: одномерные массивы В лекции рассматриваются понятие и виды массивов в языках программирования, определение, объявление, инициализация, способы генерации и... В лекции рассматриваются понятие и виды массивов в языках программирования, определение, объявление, инициализация, способы генерации и вывод одномерных массивов, расположение в памяти элементов массивов, связь между указателями и массивами. ещё
12 Одномерные массивы: задачи поиска, замены и перестановок элементов массива В лекции рассматривается классификация типовых задач на обработку одномерных массивов, приводятся примеры алгоритмизации задач поиска, замены... В лекции рассматривается классификация типовых задач на обработку одномерных массивов, приводятся примеры алгоритмизации задач поиска, замены и перестановок в одномерных массивах. ещё
13 Одномерные массивы: задачи сортировок элементов массива В лекции рассматриваются понятие и виды сортировок массивов, критерии оценки трудоемкости выполнения алгоритмов сортировок одномерных массивов,... В лекции рассматриваются понятие и виды сортировок массивов, критерии оценки трудоемкости выполнения алгоритмов сортировок одномерных массивов, приводятся примеры реализации простых сортировок. ещё
14 Двумерные массивы: задачи поиска, замены и суммирования элементов двумерного массива В лекции рассматриваются понятие, определение, объявление, инициализация, генерация и вывод двумерных массивов, расположение в памяти элементов... В лекции рассматриваются понятие, определение, объявление, инициализация, генерация и вывод двумерных массивов, расположение в памяти элементов массивов, связь между указателями и двумерными массивами, типовые алгоритмы поиска, замены и суммирования в двумерных массивах. ещё
15 Двумерные массивы: задачи сортировок и перестановок в двумерных массивах В лекции рассматриваются типовые задачи на обработку двумерных массивов, приводятся примеры алгоритмизации задач сортировок и перестановок... В лекции рассматриваются типовые задачи на обработку двумерных массивов, приводятся примеры алгоритмизации задач сортировок и перестановок в двумерных массивах. ещё
Двумерные массивы: задачи сортировок и перестановок в двумерных массивах тест для курса Структуры и алгоритмы компьютерной обработки данных 40 мин
16 Структуры В лекции рассматриваются определения, способы объявления, инициализация структур, методы доступа к данным структуры, размещение структур и... В лекции рассматриваются определения, способы объявления, инициализация структур, методы доступа к данным структуры, размещение структур и определение их размера в памяти, массивы структур. ещё
17 Структуры и указатели В лекции рассматриваются определения, способы объявления, инициализация указателей на структуры, ограничения на использование указателей как типов... В лекции рассматриваются определения, способы объявления, инициализация указателей на структуры, ограничения на использование указателей как типов элементов структур, методы доступа к данным структуры через указатели, использование указателей на структуры как параметров и значений функций. ещё
18 Объединения В лекции рассматриваются определения, способы объявления, объединений как частного случая структур, методы доступа к данным объединения,... В лекции рассматриваются определения, способы объявления, объединений как частного случая структур, методы доступа к данным объединения, размещение объединений и определение их размера в памяти, использование объединений при объявлении переменных с изменяемой структурой. ещё
19 Битовые поля В лекции рассматриваются определение, объявление и размещение в памяти битовых полей, методы доступа к битовым полям,... В лекции рассматриваются определение, объявление и размещение в памяти битовых полей, методы доступа к битовым полям, приемы использования битовых полей для побитового анализа данных. ещё
Битовые поля тест для курса Структуры и алгоритмы компьютерной обработки данных 40 мин
20 Стандартные файлы и функции по работе с ними В лекции рассматриваются понятия и определения файлов и потоков, классификация файлов, стандартные функции по работе с... В лекции рассматриваются понятия и определения файлов и потоков, классификация файлов, стандартные функции по работе с файлами, основные алгоритмы работы с файлами, приводятся примеры решения задач на организацию ввода-вывода и обработку данных в файлах. ещё
21 Обработка файлов в потоковом режиме В лекции рассматриваются понятие потокового режима при работе с файлами, потоки как типы данных, библиотечные функции... В лекции рассматриваются понятие потокового режима при работе с файлами, потоки как типы данных, библиотечные функции ввода-вывода в потоковом режиме, примеры решения задач на обработку данных из файлов. ещё
22 Прямой доступ к данным файла В лекции рассматриваются понятие, особенности, способы организации и функции ввода-вывода в файлы на нижнем уровне, отличия... В лекции рассматриваются понятие, особенности, способы организации и функции ввода-вывода в файлы на нижнем уровне, отличия низкоуровневого и потокового ввода-вывода в файлы, примеры, иллюстрирующие низкоуровневый обмен данными в файлах. ещё
23 Работа с элементами файлов В лекции рассматриваются особенности организации файлового ввода-вывода в С++ в потоковом и стандартном режимах, основные типы... В лекции рассматриваются особенности организации файлового ввода-вывода в С++ в потоковом и стандартном режимах, основные типы задач редактирования элементов файлов, способы алгоритмизации задач исключения, вставки и замены в файлах, приводятся примеры решения типовых задач. ещё
24 Решение задач на обработку файлов В лекции рассматриваются функции библиотеки классов потокового ввода-вывода, примеры реализации алгоритмов решения задач на обработку файлов.
Решение задач на обработку файлов тест для курса Структуры и алгоритмы компьютерной обработки данных 40 мин
25 Распределение памяти. Динамическое выделение памяти В лекции рассматриваются определения, распределение, способы выделения и освобождения динамической памяти, взаимодействие указателей и участков динамической... В лекции рассматриваются определения, распределение, способы выделения и освобождения динамической памяти, взаимодействие указателей и участков динамической памяти. ещё
26 Одномерные динамические массивы В лекции рассматриваются определение, объявления, инициализация одномерных динамических массивов, способы выделения и освобождения динамической памяти под... В лекции рассматриваются определение, объявления, инициализация одномерных динамических массивов, способы выделения и освобождения динамической памяти под одномерный массив, доступ к элементам одномерного динамического массива. ещё
27 Двумерные динамические массивы В лекции рассматриваются определение, объявления, инициализация двумерных динамических массивов, способы и этапы выделения и освобождения динамической... В лекции рассматриваются определение, объявления, инициализация двумерных динамических массивов, способы и этапы выделения и освобождения динамической памяти под двумерный массив, доступ к элементам двумерного динамического массива. ещё
28 Решение задач на динамические массивы В лекции рассматриваются преимущества и недостатки управления динамической памятью, типичные ошибки при работе с динамической памятью,... В лекции рассматриваются преимущества и недостатки управления динамической памятью, типичные ошибки при работе с динамической памятью, организация проверки выделения памяти, многомерные динамические массивы, приемы представления, чтения и записи динамических массивов. ещё
Решение задач на динамические массивы тест для курса Структуры и алгоритмы компьютерной обработки данных 40 мин
29 Динамические структуры данных В лекции рассматриваются определение, способы объявления, инициализация динамических структур, методы доступа к данным динамических структур, размещение... В лекции рассматриваются определение, способы объявления, инициализация динамических структур, методы доступа к данным динамических структур, размещение их в памяти, преимущества и недостатки использования динамических структур в программах. ещё
30 Динамические структуры данных: однонаправленные и двунаправленные списки В лекции рассматриваются определения и виды списков, структура, способы объявления однонаправленных и двунаправленных списков, основные операции... В лекции рассматриваются определения и виды списков, структура, способы объявления однонаправленных и двунаправленных списков, основные операции над элементами списков, приводятся примеры решения задач с использованием однонаправленных и двунаправленных списков. ещё
31 Динамические структуры данных: очередь и стек В лекции рассматриваются определения стека и очереди как частных случаев линейных списков, структура, способы объявления стеков... В лекции рассматриваются определения стека и очереди как частных случаев линейных списков, структура, способы объявления стеков и очередей, основные операции над их элементами, приводятся примеры решения задач с использованием стеков и очередей. ещё
32 Динамические структуры данных: бинарные деревья В лекции рассматриваются определения, свойства и виды деревьев, элементы, характеристики и способы объявления деревьев в программах,... В лекции рассматриваются определения, свойства и виды деревьев, элементы, характеристики и способы объявления деревьев в программах, основные операции над элементами деревьев, понятие и виды обходов деревьев, приводятся примеры реализации основных операций над бинарными деревьями в виде рекурсивных функций. ещё
33 Решение задач на динамические структуры данных В лекции рассматриваются определения, способы объявления, инициализация и особенности использования при решении задач циклических списков, деков,... В лекции рассматриваются определения, способы объявления, инициализация и особенности использования при решении задач циклических списков, деков, красно-черных деревьев, приводятся примеры решения задач на обработку кольцевых списков, деков, красно-черных деревьев. ещё
Решение задач на динамические структуры данных тест для курса Структуры и алгоритмы компьютерной обработки данных 40 мин
34 Алгоритмы обработки данных В лекции рассматривается понятие ресурсной эффективности алгоритмов посредством анализа асимптотических функций временной и емкостной сложности, приводится... В лекции рассматривается понятие ресурсной эффективности алгоритмов посредством анализа асимптотических функций временной и емкостной сложности, приводится классификация алгоритмов на основе функции временной сложности, рассматриваются общие методы оценки трудоемкости алгоритмов. ещё
35 Рекурсия и рекурсивные алгоритмы В лекции рассматриваются основные понятия рекурсии в контексте разработки алгоритмов с помощью рекурсивной триады, дается представление... В лекции рассматриваются основные понятия рекурсии в контексте разработки алгоритмов с помощью рекурсивной триады, дается представление о ресурсной эффективности и о методе оценки рекурсивных алгоритмов через подсчет вершин рекурсивного дерева. ещё
36 Решение задач на использование рекурсивных алгоритмов В лекции рассматриваются опорные схемы решения задач рекурсивными способами, приводятся примеры разработки рекурсивных функций с помощью... В лекции рассматриваются опорные схемы решения задач рекурсивными способами, приводятся примеры разработки рекурсивных функций с помощью опорных схем. ещё
37 Алгоритм перебора с возвратом В лекции рассматривается общее и частное решения переборных задач, организация возвратной рекурсии, трудоемкость алгоритмов возвратной рекурсии,... В лекции рассматривается общее и частное решения переборных задач, организация возвратной рекурсии, трудоемкость алгоритмов возвратной рекурсии, приводится пример решения задачи о расстановке ферзей на шахматной доске методом рекурсии с возвратом. ещё
Алгоритм перебора с возвратом тест для курса Структуры и алгоритмы компьютерной обработки данных 40 мин
38 Алгоритмы поиска в линейных структурах В лекции рассматриваются определение и классификация алгоритмов поиска в линейных структурах данных, описания и примеры реализаций... В лекции рассматриваются определение и классификация алгоритмов поиска в линейных структурах данных, описания и примеры реализаций алгоритмов последовательного поиска, поиска с барьером, бинарного поиска, приводится оценка трудоемкости алгоритмов поиска в линейных структурах. ещё
39 Алгоритмы хеширования данных В лекции рассматриваются определение и виды хеширования, методы разрешения коллизий в хеш-таблицах, основные алгоритмы хеширования, приводятся... В лекции рассматриваются определение и виды хеширования, методы разрешения коллизий в хеш-таблицах, основные алгоритмы хеширования, приводятся примеры программной реализации открытого и закрытого хеширования. ещё
40 Алгоритмы поиска в тексте В лекции рассматриваются основные понятия и алгоритмы, используемые в задачах поиска в тексте и приводятся примеры... В лекции рассматриваются основные понятия и алгоритмы, используемые в задачах поиска в тексте и приводятся примеры реализации основных алгоритмов поиска в тексте. ещё
41 Алгоритмы поиска на основе деревьев В лекции рассматриваются определение и виды деревьев поиска, приемы снижения трудоемкости поиска в древовидных структурах, приводятся... В лекции рассматриваются определение и виды деревьев поиска, приемы снижения трудоемкости поиска в древовидных структурах, приводятся описания алгоритмов поиска в двоичных упорядоченных, случайных и сбалансированных в высоту (АВЛ) деревьях, приводятся примеры программной реализации бинарного дерева поиска и АВЛ-дерева. ещё
42 Алгоритмы сжатия данных В лекции рассматриваются основные понятия и алгоритмы сжатия данных, приводятся примеры программной реализации алгоритма Хаффмана через... В лекции рассматриваются основные понятия и алгоритмы сжатия данных, приводятся примеры программной реализации алгоритма Хаффмана через префиксные коды и на основе кодовых деревьев. ещё
Алгоритмы сжатия данных тест для курса Структуры и алгоритмы компьютерной обработки данных 40 мин
43 Алгоритмы сортировки массивов. Внутренняя сортировка В лекции рассматриваются определение и классификация алгоритмов сортировок массивов, в частности, быстрых сортировок, изучаются параметры, характеризующие... В лекции рассматриваются определение и классификация алгоритмов сортировок массивов, в частности, быстрых сортировок, изучаются параметры, характеризующие трудоемкость алгоритмов сортировок, рассматриваются описания и примеры программных кодов следующих алгоритмов быстрых сортировок: бинарная пирамидальная сортировка, сортировка слиянием, сортировка Шелла и сортировка Хоара. ещё
44 Алгоритмы сортировки массивов. Внешняя сортировка В лекции рассматриваются определение и классификация алгоритмов внешних сортировок, понятия фаз и путей в алгоритмах внешних... В лекции рассматриваются определение и классификация алгоритмов внешних сортировок, понятия фаз и путей в алгоритмах внешних сортировок, приводятся описания и реализации алгоритмов внешней сортировки слиянием и естественной сортировки. ещё
45 Алгоритмы на графах. Алгоритмы обхода графа В лекции рассматриваются основные понятия из теории графов, модели представления графов, на основе которых приводятся описания... В лекции рассматриваются основные понятия из теории графов, модели представления графов, на основе которых приводятся описания и реализации алгоритмов поиска в глубину и в ширину. ещё
46 Алгоритмы на графах. Алгоритмы нахождения кратчайшего пути В лекции рассматриваются постановка задачи и описание алгоритмов нахождения кратчайшего пути в графах, приводятся программные реализации... В лекции рассматриваются постановка задачи и описание алгоритмов нахождения кратчайшего пути в графах, приводятся программные реализации алгоритмов Дейкстры, Флойда и переборного алгоритма. ещё
47 Решение задач на использование алгоритмов обработки данных В лекции даются общие рекомендации по решению задач повышенной сложности, рассматривается примеры программной реализации задач обработки... В лекции даются общие рекомендации по решению задач повышенной сложности, рассматривается примеры программной реализации задач обработки данных, которые решаются с помощью алгоритмов сортировок, обходов графа и сжатия данных. ещё
Решение задач на использование алгоритмов обработки данных тест для курса Структуры и алгоритмы компьютерной обработки данных 40 мин
48 Задания
49 Курсовая работа

Какой документ я получу?

Сертификат

Выдаётся автоматически после успешного завершения программы.

Удостоверение о повышении квалификации

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

Стоимость программы

690 ₽ 1 200 ₽
или любая сумма на ваше усмотрение
Вы можете оплатить любую сумму, чтобы поддержать наш проект и авторов программы. Объем услуг не зависит от размера вашей оплаты.