Как проверить скобки через стандартные коллекции Java
Для проверки подходит стек на базе Deque и ArrayDeque: открывающую скобку кладём в стек, закрывающую сравниваем с последней открытой. В конце стек должен быть пуст.
Читать ответПодготовка к интервью
3221 вопрос в категории «Лайвкодинг»
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: frontend, browser, database.
Каталог
Для проверки подходит стек на базе Deque и ArrayDeque: открывающую скобку кладём в стек, закрывающую сравниваем с последней открытой. В конце стек должен быть пуст.
Читать ответПервый print выведет 22222: умножение строки на целое повторяет её пять раз. Второй вызовет TypeError, потому что int и str нельзя напрямую складывать.
Читать ответИспользуйте два указателя: находите гласные слева и справа и меняйте их местами. Остальные символы не перемещаются; для wonderful life получается wendirful lefo.
Читать ответБез синхронизации counter++ может терять обновления, потому что чтение, увеличение и запись не атомарны. Synchronized защищает общий участок, а AtomicInteger предоставляет атомарное увеличение.
Читать ответМножество позволяет найти повтор за ожидаемое O(n) время и O(n) памяти. Сортировка копии занимает O(n log n), после чего достаточно сравнить соседние элементы.
Читать ответИспользуйте INNER JOIN customers и orders по customers.id = orders.customer_id. Тогда Diana без заказов не попадёт в результат, а у клиентов с несколькими заказами будет несколько строк.
Читать ответКод вызовет UnboundLocalError внутри show_x на print(x). Присваивание x = 10 делает x локальной во всей функции, но до первого чтения ей ещё не присвоено значение.
Читать ответВ add_user список по умолчанию сохраняется между вызовами, а lambda поздно читает общую i. При буквальном требовании без второго аргумента вернуть самого пользователя нужен отдельный признак отсутствия аргумента.
Читать ответUse a stack of opening brackets. Each closing bracket must match the most recent unmatched opening bracket; after scanning the string, the stack must be empty.
Читать ответФрагмент не компилируется: toUpperCase и contains принадлежат String, а не Stream<String>. Для преобразования элементов нужен map, а для отбора — filter.
Читать ответВызовите equals у заведомо ненулевой константы: "active".equals(status). Для null результат будет false, а не исключение.
Читать ответОдин раз вычислите общую сумму и для каждого элемента вычтите его значение. Для целых чисел это даёт результат за O(n) времени без повторного суммирования остальных элементов.
Читать ответ