Алгоритмы и структуры данных C#

На курсе «Алгоритмы и структуры данных на C#» рассматриваются наиболее распространенные способы компоновки данных для удобной и одновременно быстрой их обработки и оптимальные алгоритмы работы с ними.

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

На курсе будут подробно рассмотрены алгоритмы сортировки, понятия «хэш-таблицы» и «АВЛ-деревья». Также рассмотрим структуру данных «Граф», которая широко используется в жизни. Освоим метод динамического программирования для решения различных задач. Заключительный урок будет посвящен решению практических примеров – задачи коммивояжера, задачи о ханойских башнях и другие интересные задания.

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

ВИДЕОУРОК №1. Введение в структуру и алгоритмы данных. Связанные списки.

Основная цель этого урока – ознакомить студентов со структурами данных и понятием алгоритма. Рассмотрим асимптотическую сложность алгоритма, односвязные и двухсвязные связанные списки. Также научимся использовать О-нотации.