Что делать, когда левый указатель обогнал правый
Нет: интервал кандидатов исчерпан, цикл должен завершиться. Обращение к элементам вне условия продолжения может нарушить инвариант или выйти за границы.
Читать ответПодготовка к интервью
978 вопросов с собеседований в Яндекс
Что проверяют на интервью
Подборка объединяет вопросы, отмеченные на этапах интервью в Яндекс. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: mobile, backend, database.
Каталог
Нет: интервал кандидатов исчерпан, цикл должен завершиться. Обращение к элементам вне условия продолжения может нарушить инвариант или выйти за границы.
Читать ответКогда окно покрывает весь нужный алфавит, запомните его как кандидата и двигайте левую границу вправо, пока покрытие сохраняется. Так убираются лишние символы и находится самое короткое окно для текущей правой границы.
Читать ответПодтвердите, что видны весь текст, примеры, ограничения и сигнатура. Затем коротко перескажите ожидаемый вход и результат, уточнив неоднозначные границы.
Читать ответstr.isspace() возвращает True для непустой строки, состоящей только из пробельных символов Unicode. Это не только обычный пробел: табуляция и перевод строки тоже подходят.
Читать ответВремя O(n + m log m), память O(m), если сортируются все m символов алфавита. Устранение квадратичного поиска не убирает стоимость последующей сортировки.
Читать ответЕсли задача — найти минимальную подстроку s, содержащую все символы a, подходит скользящее окно. Для указанного примера результат aceb, а при отсутствии подходящего окна возвращается пустая строка.
Читать ответКод ищет минимальную подстроку s со всеми различными символами a. Повторы в a не учитываются. Нужно обработать пустое a и сохранять индексы, а не многократно копировать найденные подстроки.
Читать ответНазовите собственную минимальную сумму с ясными единицами и условиями: валюта, период, до налогов или на руки. При необходимости отделите нижний порог от комфортного целевого диапазона.
Читать ответqueue предоставляет синхронизированные очереди для обмена задачами между потоками: FIFO Queue, LifoQueue и PriorityQueue. Очередь координирует доступ, ожидание данных и ограничение размера.
Читать ответstr.casefold() приводит строку к форме для сравнения без учёта регистра по правилам Unicode. Преобразование сильнее lower(): например, немецкая ß становится ss.
Читать ответLookupError — базовый класс ошибок поиска по ключу или индексу. Его основные встроенные подклассы — KeyError для отсутствующего ключа и IndexError для недопустимого индекса.
Читать ответСписки смежности обычно подходят лучше: занимают O(V+E) и позволяют перебирать существующих соседей. Матрица требует O(V²), даже когда большинство рёбер отсутствует.
Читать ответ