Ctrl K
Java · Middle · Код

Напиши класс FlatIterator, который принимает список списков целых чисел и реализует интерфейс Iterator: hasNext говорит, остались ли элементы, а next возвращает следующее число, проходя все вложенные списки по порядку. Заранее копировать все элементы в один общий список нельзя.

~15 мин голосом

Как подойти

Проверяют умение реализовать ленивый итератор с состоянием: правильно держать два уровня обхода, пропускать пустые вложенные списки и соблюдать контракт Iterator — идемпотентный hasNext, next без предварительного hasNext, NoSuchElementException в конце.

Встречал этот вопрос на настоящем собесе?
Ответов0
Средний балл—
Сильных—
Тренировали0
Темы
Похожие вопросыРеализуй класс LruCache с фиксированной вместимостью, которую передают в конструктор. Метод get по ключу возвращает значение или null, метод put кладёт пару ключ-значение, а при переполнении вытесняется элемент, к которому дольше всего не обращались. Обе операции должны работать за константное время. MiddleКак устроен HashMap внутри? Что происходит, когда вы вызываете put? JuniorЧем отличаются ArrayList и LinkedList и когда что выбрать? JuniorЧто такое контракт equals и hashCode и что будет, если его нарушить? JuniorКак устроен ConcurrentHashMap в современных версиях Java и чем его внутреннее устройство отличается от обычного HashMap? Senior

Ответь голосом

Интервьюер задаст этот вопрос и послушает. Думай вслух, проси подсказку, если нужно. Закончил — пауза или «Я ответил», через минуту здесь балл и какие пункты закрыты.

Войти, чтобы ответить

Лучше в наушниках · ~15 мин