«Вышка Онлайн» запускает новый курс по алгоритмам и структурам данных
«Вышка Онлайн» представляет курс — «Алгоритмы и структуры данных — 1». Его автор, директор Центра студенческих олимпиад факультета компьютерных наук Михаил Густокашин, научит не только решать задачи, которые предлагают на собеседованиях в IT-компаниях, но и применять знания на практике. Главное умение, приобретаемое в результате обучения, — писать эффективный, работающий и протестированный код.
Михаил Густокашин
— Кому может быть полезен курс?
— Слушателям, которые решили заняться разработкой программного обеспечения: бэкендом (в первую очередь), фронтендом или мобильными приложениями. Он предназначен для тех, кто уже овладел основами программирования, например прошел профильный онлайн-курс. При этом язык программирования не так важен: при проверке практических задач поддерживаются Python, C++, C, Java и C#. Мы максимально ориентировались на практику. Подобрали темы, которые чаще всего встречаются в реальной работе программистов, и задачи, с которыми вы наверняка столкнетесь при отборе на позицию в IT-индустрии. Многие из них взяты из одноименного курса, который читается на программе «Прикладная математика и информатика» факультета компьютерных наук ВШЭ.
— Как выстроена программа курса?
— Первые занятия посвящены общему подходу к оценке эффективности алгоритмов и тестированию своих программ. Затем идет несколько занятий по использованию ассоциативных структур данных — множеств и словарей. Неумение пользоваться ими чаще всего приводит к тому, что программа тормозит. Следующие занятия покрывают основные темы задач с собеседований. Решение каждой задачи — это код программы, который автоматически проверяется заранее подготовленным набором тестов на корректность и эффективность по времени работы и требуемой памяти.
Практически каждая задача в курсе — это упрощенный кейс из реальной разработки
Например, в одной из них нужно реализовать систему для выполнения операций с банковскими счетами: их открытие, закрытие, пополнение и списание средств. Еще одна задача посвящена определению минимального количества автобусов, с помощью которого удастся организовать перевозки по расписанию.
Конечно, вряд ли на какой-либо работе встретятся сразу все алгоритмы из курса, однако широта кругозора и умение доводить решения задач до конца помогут в любой профессии.
— Курс является частью специализации. Какие профессиональные перспективы открываются после получения микроквалификации в сфере, посвященной алгоритмам и структурам данных?
— Специализация состоит из двух частей. Если первый, описанный выше, курс будет однозначно полезен разработчикам широкого профиля, то второй («Алгоритмы и структуры данных — 2») покрывает более сложные темы, которые чаще встречаются на собеседованиях и в реальной деятельности именно в бэкенде. Освоение специализации поможет пройти алгоритмические секции собеседования при устройстве на работу, сдать экзамен по алгоритмам при поступлении в магистратуру или аспирантуру, а также откроет возможности изучения более сложных алгоритмов. Например, распределенных и параллельных, алгоритмов во внешней памяти и глубоко специализированных, которые встречаются только в определенных отраслях деятельности. Опыт, полученный при решении задач, поможет разработчикам сделать свой код эффективнее в самых разных ситуациях, а умение обрабатывать крайние случаи и тестировать свои решения сделает его надежнее и ускорит разработку.
В ноябре «Вышка Онлайн» запустила на Национальной платформе «Открытое образование» еще пять курсов факультета компьютерных наук:
«Математическая статистика и А/В-тестирование»
«Сбор и анализ данных в Python»
«Статистические методы анализа данных»
«Продвинутые методы машинного обучения»
В открытом доступе представлены первые две недели видеолекций.