Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
Что такое ArrayBuffer и в чем разница между типами Uint32Array и Float32Array?
ArrayBuffer — это объект, который хранит фиксированное количество байт данных в памяти. Он используется для работы с бинарными данными. Uint32Array и Float32Array — это типизированные массивы, которые представляют разные типы данных: Uint32Array работает с беззнаковыми целыми числами, а Float32Array — с числами с плавающей точкой. Основное различие между ними — в типе данных, который они хранят.
Чем отличается array_merge() от сложения массивов $c = $a + $b (как ведут себя ключи при совпадении)?
array_merge() объединяет массивы и, если ключи числовые, переиндексирует значения с нуля. При строковых ключах значения из правого массива перезапишут значения из левого. Оператор + работает как “объединение без перезаписи”: он сохраняет значения из левого массива при совпадении ключей. Из-за этого результаты могут сильно отличаться, даже если массивы выглядят похоже.
В чём разница между ArrayList и LinkedList? Какие операции эффективны для каждой из них?
ArrayList — массив с динамическим размером. Эффективен для доступа по индексу (O(1)), но вставка/удаление в середину медленные (O(n)).
LinkedList — двусвязный список. Быстрая вставка/удаление (O(1)), но доступ по индексу медленный (O(n)).
Как устроены коллекции в Swift (Array, Dictionary, Set)?
Все коллекции в Swift являются value type и используют Copy-on-Write. Под капотом они хранят данные в heap-буферах. Array оптимизирован для последовательного доступа, Dictionary — для быстрого доступа по ключу, Set — для проверки уникальности. Каждая коллекция выбирает структуру данных под свою задачу. Это влияет на производительность операций.
Как работает выделение памяти при добавлении элементов в Array?
При первом добавлении создаётся буфер минимального размера. Если в буфере не хватает места, Swift выделяет новый буфер с увеличенной ёмкостью (обычно в 2 раза больше), копирует старые элементы и освобождает старый. Это обеспечивает амортизированное время вставки O(1).
Какая алгоритмическая сложность поиска элемента в Array без знания индекса?
В чем разница между Array, Set и Dictionary?
В чём отличие array от List в C#?
В чем разница между методами System.Array.CopyTo() и System.Array.Clone()?
Что такое зубчатые массивы (Jagged Arrays)?
Рейтинг:
2
Сложность:
6
Поиск элемента в Array без индекса — это линейный проход (linear search), его сложность O(n), где n — число элементов.
Рейтинг:
2
Сложность:
6
Array — упорядоченный список, допускает дубли; доступ по индексу за O(1).Set — неупорядоченное множество уникальных элементов, поиск за O(1) в среднем.Dictionary — неупорядоченное отображение «ключ→значение», доступ по ключу за O(1) в среднем.
Рейтинг:
5
Сложность:
3
Array — это структура фиксированного размера, создаваемая один раз. List — это обертка над массивом, которая предоставляет динамическое изменение размера. Когда вы добавляете элементы в List и он заполняется, он автоматически создает новый массив большего размера и копирует в него старые элементы. List удобнее для добавления/удаления, а Array немного эффективнее по памяти и скорости доступа, если размер известен заранее.
Рейтинг:
2
Сложность:
4
CopyTo() копирует элементы из одного массива в другой, а Clone() создает новый массив, содержащий все элементы исходного массива.
Рейтинг:
2
Сложность:
3
Зубчатый массив — это массив массивов, в котором длина каждого вложенного массива может быть разной.
Рейтинг:
1
Сложность:
7
Рейтинг:
5
Сложность:
7
Рейтинг:
2
Сложность:
6
Рейтинг:
5
Сложность:
8
Рейтинг:
2
Сложность:
5