// Дан массив неотрицательных чисел без повторяющихся элементов.
Скопируйте и отсортируйте числа, затем объедините последовательности, где соседние значения отличаются на единицу. Одиночные элементы выводятся без дефиса.
Читать ответПодготовка к интервью
3221 вопрос в категории «Лайвкодинг»
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: frontend, browser, database.
Каталог
Скопируйте и отсортируйте числа, затем объедините последовательности, где соседние значения отличаются на единицу. Одиночные элементы выводятся без дефиса.
Читать ответПрограмма небезопасна: горутины одновременно пишут в обычную map, а sleep не гарантирует завершение. Нужны синхронизация записей и явное ожидание.
Читать ответПосле modifySlice длина s остаётся 2, но общий массив содержит 0, 0, 3. Затем append(s, 4) перезапишет третий элемент, и s станет [0 0 4].
Читать ответИспользуйте EXISTS, чтобы выбрать клиентов, у которых есть хотя бы один заказ, без дублирования строки клиента по числу заказов.
Читать ответИспользуйте sync.WaitGroup: Add выполняется до запуска, каждая goroutine вызывает Done через defer, main ждёт Wait. Это гарантирует завершение, но не порядок чисел.
Читать ответЧитайте файл потоково и храните только 10 лучших записей. При равном score сохраняйте более раннюю запись; весь файл загружать в память не требуется.
Читать ответНа обычной 64-битной Go-платформе some1 и some3 занимают по 24 байта, some2 — 32 из-за padding. Поэтому по размеру первые два варианта равнозначны и компактнее some2.
Читать ответДля связи «многие ко многим» объедините книги с таблицей связей и авторами. LEFT JOIN сохранит книги без автора; соавторы дадут несколько строк на книгу.
Читать ответИсходный main содержит гонку по max и не ждёт горутины. Для диапазона 1…n максимум находится без параллелизма: это n, если оно чётное, иначе n−1.
Читать ответПростой аналог Once можно сделать через канал как взаимное исключение и флаг выполнения. Все обращения к флагу должны происходить под одной блокировкой.
Читать ответВнутри функции длина после append равна 1, а снаружи остаётся 0. При входе передаётся копия заголовка среза с длиной 0 и ёмкостью 5.
Читать ответRLE заменяет каждую непрерывную серию одинаковых символов парой «длина + символ». В Go для Unicode удобно проходить строку по rune.
Читать ответ