Напишите функцию, которая возвращает первый неповторяющийся элемент массива.
Сначала подсчитайте частоты, затем пройдите исходный массив и верните первый элемент с частотой 1. Порядок Dictionary не определяет «первый».
Читать ответПодготовка к интервью
3221 вопрос в категории «Лайвкодинг»
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: frontend, browser, database.
Каталог
Сначала подсчитайте частоты, затем пройдите исходный массив и верните первый элемент с частотой 1. Порядок Dictionary не определяет «первый».
Читать ответПосчитайте частоту каждого элемента в словаре и выберите максимальную. При равных частотах заранее определите правило, например первое появление во входе.
Читать ответСобственная concurrent queue с barrier сериализует запись относительно чтений. Но вызов completion внутри очереди создаёт риск reentrancy и deadlock при setValue из callback.
Читать ответПосле guard let self задача сильно удерживает ViewModel через await. Поэтому [weak self] в capture list не гарантирует deinit при уходе назад.
Читать ответCustomButtonStyle оформляет label кнопки; модификатор на VStack применяется к вложенной Button. При нажатии выполнится action и напечатается Tapped.
Читать ответТакой синтаксис требует пользовательского result builder и инициализатора Array. Обычный Array сам по себе не собирает выражения и if из замыкания.
Читать ответoverlay рисует кнопку поверх ScrollView и может перекрывать последние элементы. safeAreaInset резервирует для кнопки место в безопасной области прокрутки.
Читать ответСоберите URLRequest, закодируйте тело, задайте POST и Content-Type, выполните запрос, проверьте HTTP-статус и только затем декодируйте успешный ответ.
Читать ответЭто generic-кеш на Dictionary: T становится associatedtype Value, присваивание nil удаляет ключ. fetchValue вызывает completion синхронно, несмотря на название.
Читать ответПосле исправления list.[1] на list[1] вывод будет 26, затем 27. После append указатель alex остаётся на элементе старого массива.
Читать ответType assertion b.(YZ) успешен, поскольку *Bar реализует Y и Z. Но z.X() не компилируется: в статическом интерфейсе YZ метода X нет.
Читать ответПрограмма напечатает 0. Increment с получателем Count изменяет копию счётчика, а не переменную count из main.
Читать ответ