Junior-разработчикам и тем, кто хочет стать разработчиком / устроиться на должность разработчика
Middle-разработчикам
Уже имеете базовые навыки в любом объектно-ориентированном языке программирования. Вы освоите как теоретический, так и практический материал, а также познакомитесь с принципами оценки сложности алгоритмов.
Освежите знания по теме алгоритмов и структур данных. Акцент на практике - написание кода, разбор подходов в решении алгоритмических задач. Вы сможете выйти на новый уровень, научитесь создавать новые алгоритмы и вспомните базу для поступления на работу в крупные технологические компании: Яндекс, Сбер, Google, Microsoft и другие.
Практика и теория
47 видеолекций и 150 практических заданий
Формат
Курс в записи на платформе CoreApp
Поддержка
Комментарии преподавателя по заданиям в течение всего обучения
Длительность
6 месяцев
Этот курс подойдет вам, если
Вы хотите развиваться как профессиональный разработчик и готовы повысить свой уровень
Вы знаете на базовом уровне один из объектно-ориентированных языков программирования: Python, Java, PHP, C++, JavaScript, C#
Программист должен знать ключевые алгоритмы и уметь использовать их в написании кода
Польза
Знание алгоритмов расширяет инструментарий разработчика в решении практических задач
Удобство
Изучаются в университетском курсе на IT-специальностях, и часто встречаются на технических собеседованиях.
Узнаете о популярных алгоритмах и структурах данных
Познакомитесь со стандартными библиотеками языков программирования
Получите практический опыт решения сложных алгоритмических задач
Сможете в любой момент вернуться к лекциям и освежить знания. Доступ 12 месяцев
Сможете применять полученные навыки при разработке программ
Сможете легко пройти техническое собеседование
Получите сертификат о прохождении курса «Алгоритмы и структуры данных» от proglib. academy
Научитесь писать более короткий и эффективный код
Ваши знания подтвердит официальный сертификат
При успешном прохождении курса вы получаете квалифицированный сертификат. Работодатель сможет проверить его действительность на сайте proglib.academy.
Сертификат вы получите после прохождения курса.
В этом видео обсуждается интерфейс очереди и способы его реализации. Одна из классических реализаций — двоичная куча. Разбираем её внутреннее устройство, асимптотики, возможные расширения. Находим её реализацию в стандартной библиотеке. Рассматриваем примеры задач, решаемых с помощью очереди с приоритетом.
Вебинар с разработчиком Яндекса Степаном Мацкевичем «Очередь с приоритетом»
Proglib.academy — онлайн-курсы от создателей одного из самых крупных IT-сообществ «Библиотека программиста». В нашем комьюнити уже более 800 000 разработчиков. Помогаем развивать технические навыки, изучить новые профессии и продвигаться в карьере. Учим решать сложные задачи и готовим к собеседованиям в Яндекс, FAANG, Samsung, Amazon и т. д.
Задачи сортировки. Виды сортировок c примерами и задачами.
Двоичная куча. Пирамидальная сортировка. Достоинства и недостатки
Основные понятия ДП. Задачи и примеры использования ДП.
Основные понятия. Методы предварительного анализа строк. Грани строки. Примеры использования.
Кодирование и шифрование. Алгоритмы Хаффман/ШеннонФано. Коды исправляющие ошибки. Кодирование Хэмминга.
Конечные автоматы.
Поиск пути в графе. Алгоритм Дейкстры. Фибоначчиевы кучи. Алгоритм типа умножения матриц. Алгоритм Флойда-Уоршелла. Алгоритм Джонсона.
Остов минимального веса. Алгоритм Прима. Алгоритм Краскала. Система непересекающихся множеств.
Графы. Мосты. Точки сочленения. Компоненты сильной связности.
Основные понятия. Теоремы Брукса, о шести красках, о пяти красках. Алгоритмы раскраски графов. Жадный алгоритм. Виды графов и их хроматические числа. Двудольный граф. Примеры использования.
Бинарные деревья поиска. Дерево отрезков с обновлением на отрезке Дерево Фенвика.
2-3 дерево. Сбалансированные деревья.
Балансировка. Большое/маленькое левое вращение. Операции и т.д.
Алгоритмы сжатия данных. Префиксное дерево.
Union - Объединение. Размещение в памяти.
Алгоритмы. Эвристические алгоритмы построения маршрута. Алгоритм ближайшего соседа. Модифицированный алгоритм ближайшего соседа. Алгоритм на основе кривой Серпинского. «Волновая функция» как структура данных. Метод ветвей и границ.
Эволюционные методы. Методы роевого интеллекта. Методы, имитирующие физические процессы. Генетические алгоритмы. Методы иммунных систем. Метод рассеивания.
Эвристики, жадные алгортимы
Получите полную программу курса «Алгоритмы и структуры данных»
Образование: Закончил механико-математический факультет МГУ им. М.В. Ломоносова в 2006 году, защитил кандидатскую диссертацию в 2010 году.
Место работы: разработчик Яндекс Go, руководитель сектора разработки сценариев организации поездок, преподаватель Факультета Инноваций и Высоких Технологий МФТИ
Степан Мацкевич
Образование: Старший преподаватель ФКН НИУ ВШЭ, НИТУ МИСИС, аспирант департамента анализа данных и искусственного интеллекта ФКН НИУ ВШЭ.
Место работы: Инженер-программист, ведущий эксперт НИУ ВШЭ, цифровой ассистент и цифровой консультант НИУ ВШЭ.
Мария Горденко
Стоимость полного курса
Обучение проходит на платформе CoreApp. Занимайтесь в удобное время и в своем темпе. Вам будет доступен общий чат с сокурсниками и поддержка от куратора 24/7. Команда обучающего центра дает обратную связь по каждому домашнему заданию.
По наполнению курса, который я прохожу, нравится абсолютно все, разбираются все темы, в которые мне необходимо было погрузиться. Курс скорее для продвинутых.
Курс proglib.academy очень понравился. Для меня ценно было то, что освещались фундаментальные темы по математике, которые я не проходил в университете.
C помощью курса proglib.academy я хотел освежить знания и всегда иметь возможность вернуться к качественным заданиям. Курс с этой задачей справился, так что благодарю!
Лев Аркашов
Даниза Муссаева
По наполнению курса, который я прохожу: нравится абсолютно все, большое количество теории, разбираются все темы, в которые необходимо погрузиться. Курс скорее для продвинутых. Нравится подробный разбор доказательств, логичность изложения тем. Точно чувствую больше уверенности в своих знаниях. В общем, очень хороший курс, то, что я хотела, и отдельное спасибо за возможность проходить в своём режиме, совмещая с работой и за обратную связь от преподавателей.
Михаил Шпильман
Отличный курс по математике! Очень понятные и доходчивые объяснения от авторов. Прохождение помогло «восстановить» базовые знания школьной математики – как раз такой и искал. Как итог – смог решить экзаменационные примеры, которые перед прохождением курса ничего кроме страха не вызывали) Уже рекомендовал курс знакомому, у которого тоже «боязнь» математики и желание начать её осваивать).
Глеб Аксенов
Курс proglib.academy очень понравился. Для меня ценно было то, что освещались фундаментальные темы по математике, которые я не проходил в университете. С точки зрения развития математической культуры, на мой взгляд, курс очень полезен. Понравились дополнительные занятия по ML, хорошо «разбавляют» занятия по чистой математике. Я сейчас взял перерыв, через месяц планирую продолжить. Здорово, что есть год, чтобы пройти курс.
Часто задаваемые вопросы
От 3-х часов в неделю. Занятия в видеоформате длятся по 2 академических часа (1,5 часа). Также закладывайте время на выполнение домашней работы.
У вас будет куратор в Telegram-чате, а преподаватель лично проверит каждое домашнее задание и даст полезный совет на платформе Степик. Вы всегда сможете получить ответы на вопросы по теме урока, а также перенять опыт, профессиональные знания и узнать лайфхаки.
Да, вы можете оформить рассрочку на срок до 12 месяцев в банках-партнерах, и спланировать свой бюджет, разбив всю сумму на мелкие ежемесячные платежи.
Образовательные модули подойдут для специалистов IT-сферы, которые уже владеют хотя бы одним из языков ООП. В частности, курс подойдет Junior-разработчикам.
Чтобы понять, сможете ли вы заниматься самостоятельно и получить результат, отправьте заявку на консультацию. Мы поможем разобраться, достаточно ли у вас базовых знаний, и подойдет ли вам курс.
Работодатели проверяют опыт кандидатов трудными алгоритмическими задачами. Так компании тестируют не только сами знания, но и умение последовательных рассуждений в сфере разработки — главный навык для написания качественного кода.
Вы можете знать любой объектно-ориентированный язык программирования (Python, Java, PHP, C++, JavaScript, C# и др.).
Вы можете изучать материалы в удобном режиме и самостоятельно выбирать время для занятий. Доступ к курсу неограничен по времени. Более того, по окончании курса видеоуроки остаются с вами, поэтому вы можете вернуться к ним и освежить знания в любой момент.
Можете оставить свои контакты, и мы обязательно вам перезвоним, чтобы подобрать оптимальную программу, основываясь на вашем опыте и навыках.
Остались вопросы?
Остались вопросы, вы не знаете подходит ли курс лично вам. Заполните форму, мы свяжемся с вами в ближайшее время и подробно обо всем расскажем.