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

Инструменты, алгоритмы и структуры данных

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

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

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

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

Дистанционно (самостоятельно)
Описание Эта учебная программа посвящена фундаментальным принципам организации данных и методам их обработки. Изучаются эффективные способы реализации структур в оперативной памяти, алгоритмы поиска и сложность вычислений. Обучение ориентировано на программистов и разработчиков программного обеспечения. Материал подается от базовых структур, таких как списки и стеки, к более сложным деревьям и графам. Теоретический анализ алгоритмов сопровождается оценкой их асимптотической сложности и применимости в реальных задачах разработки.
Цели
  • Дать системное представление о структурах данных и их реализации.
  • Раскрыть методы оценки вычислительной сложности алгоритмов.
  • Сформировать навыки выбора оптимальных структур для конкретных задач.
Чему я научусь?
  • Реализовывать и применять деревья, графы и хеш-таблицы.
  • Оценивать эффективность алгоритмов сортировки и поиска.
  • Оптимизировать код за счет правильного выбора структур данных.

Авторы

Мейер Бертран
Мейер Бертран
Возглавляет знаменитую кафедру Software Engineering в ETH, Цюрих, – в одном из старейших университетов Европы. Он автор языка Eiffel, основатель и научный руководитель фирмы Eiffel Software.
Чему я научусь?
  • Реализовывать и применять деревья, графы и хеш-таблицы.
  • Оценивать эффективность алгоритмов сортировки и поиска.
  • Оптимизировать код за счет правильного выбора структур данных.

Учебный план

Занятия
Экзамен экстерном Внимание! Экзамен экстерном не обязательный для сдачи. При желании вы можете его пройти, если хотите подтвердить свои знания по данному курсу без его изучения или поверить свои знания по нему. Экзамен экстерном можно сдать только один раз. 90 мин
1 Введение "У слушателей Интернет университета появилась уникальная возможность не только пройти курсы лекций по замечательной книге ""Почувствуй... "У слушателей Интернет университета появилась уникальная возможность не только пройти курсы лекций по замечательной книге ""Почувствуй класс. Учимся программировать хорошо с объектами и контрактами"", но и увидеть, услышать автора книги – профессора Бертрана Мейера. Отвечая на вопросы профессора Владимира Биллига – переводчика книги, Бертран Мейер объясняет, почему этот курс может быть интересен студентам, приступающим к изучению информатики, чем книга может быть интересна преподавателям, читающим подобный курс, чем книга и курсы по ней могут быть интересны профессионалам ИТ. Он рассказывает о том, как учат информатике в ЕТН – одном из старейших учебных заведений Европы, об особенностях этого курса. В беседе затрагиваются и другие вопросы, в частности Бертран говорит о своей любви к русскому языку и о том, как он, будучи школьником, учил русский язык. Эта лекция является хорошим введением в курс, полученным ""из первых уст""." ещё
2 Немного об аппаратуре В данной лекции более подробно рассматривается устройство компьютера, организация памяти, команд компьютера. Рассматриваются вопросы представления данных... В данной лекции более подробно рассматривается устройство компьютера, организация памяти, команд компьютера. Рассматриваются вопросы представления данных в памяти компьютера. ещё
Немного об аппаратуре тест для курса Инструменты, алгоритмы и структуры данных 40 мин
3 Описание синтаксиса В лекции обсуждается синтаксис языков программирования и формальные грамматики, как способ описания синтаксиса языка. Вводится классификация... В лекции обсуждается синтаксис языков программирования и формальные грамматики, как способ описания синтаксиса языка. Вводится классификация языков программирования. ещё
Описание синтаксиса тест для курса Инструменты, алгоритмы и структуры данных 40 мин
4 Языки программирования В лекции продолжается рассмотрение языков программирования. Вводятся понятия компилятора и интерпретатора программ. Даются основы компиляции. Рассматривается... В лекции продолжается рассмотрение языков программирования. Вводятся понятия компилятора и интерпретатора программ. Даются основы компиляции. Рассматривается инструментарий, используемый на всех этапах работы с программами, начиная от текстовых редакторов, заканчивая рассмотрением интегрированных сред разработки, в частности среды разработки Eiffel Studio. ещё
Языки программирования тест для курса Инструменты, алгоритмы и структуры данных 40 мин
5 Инструментарий В лекции расматриваются текстовые редакторы, метрики, интегрированная среда обработки и подробно изучается управление конфигурацией.
Инструментарий тест для курса Инструменты, алгоритмы и структуры данных 40 мин
6 Фундаментальные структуры данных, универсальность и сложность алгоритмов В этой лекции рассматриваются вопросы статической проверки типов, вводится понятие сложности алгоритмов O-большое и О-малое. Рассматриваются... В этой лекции рассматриваются вопросы статической проверки типов, вводится понятие сложности алгоритмов O-большое и О-малое. Рассматриваются массивы, как одна из основных структур данных. ещё
Фундаментальные структуры данных, универсальность и сложность алгоритмов тест для курса Инструменты, алгоритмы и структуры данных 40 мин
7 Списки В лекции рассматриваются такие структуры данных как кортежи и списки разного рода.
Списки тест для курса Инструменты, алгоритмы и структуры данных 40 мин
8 Хэш-таблицы, стеки, очереди В лекции рассматриваются хеш-таблицы, распределители и итерирование структур данных.
Хэш-таблицы, стеки, очереди тест для курса Инструменты, алгоритмы и структуры данных 40 мин
9 Рекурсия и деревья "В лекции вводится понятие рекурсии, рекурсивных определений. Рассматривается известная задача ""Ханойской башне"". Широко используемая в программировании... "В лекции вводится понятие рекурсии, рекурсивных определений. Рассматривается известная задача ""Ханойской башне"". Широко используемая в программировании структура данных – дерево рассматривается как рекурсивная структура данных. Обсуждаются рекурсивные операции, выполняемые над рекурсивными структурами данных." ещё
Рекурсия и деревья тест для курса Инструменты, алгоритмы и структуры данных 40 мин
10 Рекурсивные программы "В лекции обсуждается стратегия перебора с возвратами и стратегия ""альфа-бета"". Обсуждаются вопросы связи рекурсии и циклов,... "В лекции обсуждается стратегия перебора с возвратами и стратегия ""альфа-бета"". Обсуждаются вопросы связи рекурсии и циклов, а также алгоритм реализации рекурсии." ещё
Рекурсивные программы тест для курса Инструменты, алгоритмы и структуры данных 40 мин
11 Проектирование и инженерия алгоритма: топологическая сортировка Она представляет собой образец искусства программирования, представляя образец инженерного подхода к проектированию программы. Здесь на примере... Она представляет собой образец искусства программирования, представляя образец инженерного подхода к проектированию программы. Здесь на примере задачи о топологической сортировке строится инженерное решение, допускающее повторное использование, сочетающее построение эффективного алгоритма и структур данных с проверкой корректности данных, учета ситуаций, которые могут возникать на практике. ещё
Проектирование и инженерия алгоритма: топологическая сортировка тест для курса Инструменты, алгоритмы и структуры данных 45 мин
12 Введение в Java (по материалам Марко Пиккони)
13 Введение в C# (по материалам Бенджамина Моранди)
14 Введение в C++ (по материалам Надежды Поликарповой)
15 От C++ к C
16 Использование среды EiffelStudio
17 Программирование в ETH
Тренировочный экзамен Внимание! Тренировочный экзамен экстерном не обязательный для сдачи. При желании вы можете его пройти, если хотите проверить свои знания курса перед сдачей экзамена. Тренировочный экзамен можно сдавать сколько угодно один раз. 90 мин
Экзамен 60 мин

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

Сертификат

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

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

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

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

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