А чтобы глубже разобраться в ссылках, изучим двусвязные списки и B-деревья, которые используются в базах данных для быстрого поиска по индексу, а также при хранении файлов на диске
10 задач по рекомендованным ниже темам для оценки уровня ваших знаний. Задачи не идут в зачёт и не влияют на итоговый рейтинг.
Жадный алгоритм — это алгоритм, который выбирает оптимальное действие на каждом шаге. Но такой подход не всегда даёт лучший результат, например, когда нам нужно оптимально наполнить коробку предметами известного веса.
Эта задача называется «задача о рюкзаке», и она решается методами динамического программирования.
Задачи о поиске максимума, суммы или результата применения другой функции на отрезке массива возникают очень часто. Например, это может быть количество продаж за определенный период времени или максимальная нагрузка на сервер.
Для решения полезно знать несколько структур данных, каждая из которых может пригодиться при различных условиях. Префиксные суммы и разреженные таблицы отвечают на запросы очень быстро, а дерево отрезков позволяет изменять данные, в том числе быстро выполнять групповые операции сразу над несколькими элементами.
Манипуляции с отдельными битами позволяют экономно хранить данные и совершать множество быстрых и интересных операций. Также это одна из очень популярных тем на собеседованиях, особенно для тех специалистов, которые будут работать с высоконагруженными системами.
На лекции мы рассмотрим применения битовых операций для исправления ошибок, которые постоянно возникают при передаче и хранении данных от таких неожиданных причин, как, например, космическое излучение. А также познакомимся с популярным методом сжатия данных, который используется в zip-архивах и многих других обстоятельствах.
В прямом эфире расскажем про:
Если вы хотите, чтобы ваше резюме анонимно разобрали в прямом эфире, заполните форму до 21 апреля 10:00 мск. С помощью рандомайзера выберем несколько резюме для разбора
Двусвязные списки были изобретены очень давно и остаются незаменимыми во многих случаях, несмотря на изобретение и внедрение других способов хранения данных. Эта структура данных — одна из самых популярных на собеседованиях.
А чтобы глубже разобраться в ссылках, мы изучим B-деревья, которые используются в системах управления базами данных для быстрого поиска по индексу, а также при хранении файлов на диске.
В зачёт идут только полностью решённые задачи. Задача считается решённой, если она прошла все тесты. Сдавать решения нужно до дедлайна — 18:00 по московскому времени в день трансляции разбора этого контеста. Можно сдать решения после дедлайна, но в зачёт они не пойдут.
Результаты ранжируются по количеству решённых задач. Чем больше задач решено, тем выше вы поднимаетесь. При равном количестве решённых задач будет учитываться количество посылок в задачах под звёздочкой.
Для участников, которые вошли в топ, предусмотрены поощрения.
Во время «дорешки» результаты не будут проверяться на списывание. Эти решения уже не пойдут в зачёт и не будут влиять на рейтинг участника.
Убедитесь, что имя и фамилия указаны правильно. Если допустили опечатку, мы её исправим, чтобы в сертификате было написано верно. Электронные сертификаты всем участникам отправим до 13 декабря.
Если вы не нашли себя в списке участников или заметили опечатку в личных данных, заполните форму форму.
Все решения до разбора будут проверены на списывание. Участники, замеченные за списыванием, будут удалены из турнирной таблицы. Это касается как недобросовестных участников, которые загрузили чужое решение от своего имени, так и тех, кто «дал списать». Запрещается решать задачи коллективно и предоставлять одинаковые решения с разных аккаунтов.
Когда дедлайн по контесту пройдёт, вы сможете добавить все решённые задачи в портфолио, а также опубликовать свои решения
Напишите, если остались вопросы: intern@yandex-team.ru