Вернуться в видеотекуСобеседование Java Middle | Первый этап собеседования в крупные компании | Задачи с собеседования
Тренировочное Java-интервью с тремя алгоритмическими задачами и подробным разбором указателей, динамического программирования, коллекций и тестирования. В финале кандидат и ведущий обсуждают прогресс и подготовку к будущим собеседованиям.
- Направление
- Backend
- Формат
- Видео
- Грейд
- Middle
- Длительность
- 1 ч 32 мин
Коротко о видео
Видео показывает тренировочное Java-техническое интервью с Артёмом, построенное вокруг алгоритмического этапа отбора. Кандидат решает три задачи: удаление дубликатов из отсортированного односвязного списка, Climbing Stairs и преобразование целого числа в римскую запись. После решений ведущий разбирает сложность, крайние случаи, читаемость Java-кода и варианты улучшений; в финале участники обсуждают опыт собеседования и регулярную практику задач.
Затронутые темы
Что взять на заметку
- Для отсортированного односвязного списка дубликаты можно удалять одним проходом, сравнивая текущий узел со следующим и переназначая ссылки; целевая сложность — O(n) по времени и O(1) по памяти.
- Перед отправкой решения стоит отдельно проверить пустой список, один элемент, последовательности одинаковых значений и другие крайние случаи: локальный Run покрывает лишь несколько тестов, а Submit запускает более широкий набор.
- В Climbing Stairs число способов достигает ступени по рекуррентной формуле F(n)=F(n-1)+F(n-2); достаточно хранить два предыдущих значения, получая O(n) времени и O(1) дополнительной памяти.
- Тернарный оператор в Java является выражением: он не заменяет произвольные ветви с действиями без корректно составленного выражения; неудачная попытка упростить if/else в видео привела к ошибке компиляции.
- Для неотсортированного списка HashSet обычно подходит для проверки уже встреченных значений: contains работает в среднем за O(1), а память растёт до O(n). HashMap не нужен, если хранить дополнительное значение для ключа не требуется.
- В задаче Integer to Roman важно проверить вычитательные пары и границы условия: 4, 9, 40, 90, 400, 900 и 3999. Участники сравнивают массивы, отображения и TreeMap, но процентили скорости на платформе зависят от конкретного запуска.
- На интервью полезно не только назвать алгоритм, но и объяснить переходы, базовые случаи, оценку сложности и причины выбора структуры данных.