Специализация
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 в телеграм
Для чего используется тег <link>?
Тег <link> используется для подключения внешних ресурсов к HTML-документу. Чаще всего он применяется для подключения CSS-стилей. Тег располагается внутри секции <head> и не отображается на странице.
Пример:
<link rel="stylesheet" href="styles.css">
Этот код подключает файл стилей styles.css к странице.
Что делает <Link> и чем он отличается от обычного <a> тега?
<Link> из React Router используется для навигации внутри React-приложения, предотвращая полную перезагрузку страницы. В отличие от <a>, который обновляет всю страницу, <Link> обновляет только нужные компоненты, сохраняя состояние приложения.
Какие интерфейсы реализует LinkedList?
LinkedList реализует интерфейсы List, Deque и Queue.
Это позволяет использовать его как список, очередь и двустороннюю очередь.
Также он наследует интерфейсы Collection и Iterable.
Поддерживается добавление и удаление элементов с обоих концов.
Поведение зависит от того, через какой интерфейс используется коллекция.
Какая асимптотическая сложность операций в ArrayList и LinkedList?
ArrayList обеспечивает быстрый доступ к элементам по индексу, но медленно вставляет и удаляет элементы в середине списка.LinkedList не поддерживает быстрый доступ по индексу, но может эффективно вставлять и удалять элементы при наличии ссылки на узел.
Различия связаны с тем, что ArrayList основан на массиве, а LinkedList — на связном списке.
Выбор реализации напрямую влияет на производительность операций.
Почему на практике ArrayList часто быстрее LinkedList, несмотря на асимптотику?
ArrayList хранит данные в непрерывной области памяти.
Это хорошо работает с кэшами процессора.LinkedList использует разрозненные объекты и ссылки.
Из-за этого возникает много кэш-промахов.
В реальных приложениях ArrayList часто оказывается быстрее.
Какая сложность вставки элемента в середину ArrayList и LinkedList и почему она различается?
Какая сложность доступа по индексу у ArrayList и LinkedList?
В чём разница между ArrayList и LinkedList? Какие операции эффективны для каждой из них?
Как реализовать навигацию через координаторы? Как обработать Deep Link?
Что такое LinkedList<T>, какие типы существуют, и в каких случаях его целесообразно использовать вместо List<T>?
Рейтинг:
5
Сложность:
5
Вставка в середину ArrayList выполняется за O(n).
В LinkedList вставка элемента после нахождения позиции выполняется за O(1).
Однако поиск позиции в LinkedList тоже занимает O(n).
Итоговая сложность операций на практике сопоставима.
Разница заключается в копировании элементов и работе со ссылками.
Рейтинг:
5
Сложность:
3
Доступ по индексу в ArrayList выполняется за O(1).
В LinkedList доступ по индексу занимает O(n).
Это связано с разным способом хранения элементов.ArrayList использует массив.LinkedList — цепочку связанных узлов.
Рейтинг:
2
Сложность:
6
ArrayList — массив с динамическим размером. Эффективен для доступа по индексу (O(1)), но вставка/удаление в середину медленные (O(n)).
LinkedList — двусвязный список. Быстрая вставка/удаление (O(1)), но доступ по индексу медленный (O(n)).
Рейтинг:
2
Сложность:
6
Координатор — объект, владеющий навигационным контроллером и ответственностью за переходы. Для Deep Link в AppCoordinator парсят URL, определяют маршрут и делегируют запуск нужного координатора с параметрами. Это позволяет изолировать логику навигации от вью-контроллеров.
Рейтинг:
2
Сложность:
6
LinkedList<T> — это двусвязный список, где каждый узел хранит ссылку на следующий и предыдущий узел. В .NET он представлен классом LinkedList<T> и узлами LinkedListNode<T>. Он полезен, когда нужно часто вставлять или удалять элементы в середине списка при наличии ссылки на узел (операции O(1)), в отличие от List<T>, где при вставке или удалении в середине требуется сдвиг массива O(n). Доступ по индексу у linked-list — O(n).
Рейтинг:
1
Сложность:
3
Рейтинг:
2
Сложность:
3
Рейтинг:
4
Сложность:
4
Рейтинг:
5
Сложность:
5
Рейтинг:
4
Сложность:
6