Сравнение возвращаемых ошибок с nil
По порядку будут выведены true, true, false, false, true. Различайте nil-интерфейс, типизированный nil внутри него и обычный nil-указатель.
Читать ответПодготовка к интервью
3221 вопрос в категории «Лайвкодинг»
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: frontend, browser, database.
Каталог
По порядку будут выведены true, true, false, false, true. Различайте nil-интерфейс, типизированный nil внутри него и обычный nil-указатель.
Читать ответИндекс записи переносит очередное число только тогда, когда оно отличается от последнего оставленного. Уникальный префикс имеет длину k.
Читать ответFIFO использует порядок добавления, а Get его не меняет. Обновление существующего ключа здесь не переносит его в конец очереди.
Читать ответЗапустите отправляющую горутину до чтения и закройте канал после последнего значения. Тогда range завершится вместо вечного ожидания.
Читать ответВсе три Println покажут [0 1 2 3] 4 5. Первый append создаёт другой массив, второй меняет скрытый пятый элемент общего массива.
Читать ответВызовите printNumber последовательно в цикле от 1 до 10. Функция уже содержит паузу, поэтому дополнительный таймер не требуется.
Читать ответДля каждого входа запустите пересылку, а выход закройте после завершения всех пересыльщиков. WaitGroup предотвращает преждевременный close.
Читать ответТочный результат не определён ни на одном, ни на нескольких ядрах: записи data[1] и чтение без синхронизации образуют гонку данных.
Читать ответВыборка без возвращения даёт n уникальных чисел за O(n), без повторных попыток при коллизиях. Отрицательное n нужно явно отклонять.
Читать ответБудет выведено val is not nil: интерфейс val содержит тип *int и nil-указатель, а не полностью пустой интерфейс.
Читать ответПрограмма ничего не печатает: ReceiveFromCh нигде не вызывается, а main не ждёт отправителей. fmt.Sprintf создаёт строку, но не выводит её.
Читать ответФрагмент не компилируется: нужны for path := range ch и defer, а не default. После такого исправления останется проблема отложенного закрытия всех файлов.
Читать ответ