Сложность алгоритмов и Big-O нотация
Что такое обозначение $Big(O)$ [big O] и почему оно важно в анализе алгоритмов?
Как сложность по времени и памяти влияет на производительность бэкенд-приложений?
Подсказки:
Обозначение Big O описыв ...
Базовые структуры данных и их применение
Назовите распространённые структуры данных и объяснить их практическое применение в разработке программного обеспечения.
Подсказки:
Рассмотрите структуры, используемые для хранения коллекций элемент ...
Сбалансированные деревья и хеш-таблицы, их области применения
Что такое сбалансированные деревья и почему они важны для производительности?
Когда следует выбирать сбалансированные деревья вместо хеш-таблиц в приложениях бэкенда?
Подсказки:
Подуймайте об опера ...
Внутреннее устройство хеш-таблицы
Как устроена хэш-таблица как структура? Как она работает?
Доп вопросы:
Приведите сценарий, в котором хэш-таблица была бы оптимальным выбором структуры данных.
Можете объяснить способы обработки кол ...
Массивы и связанные списки: что и когда лучше, почему
Какие основные различия между массивами (array) и связными списками (linked list)?
Дополнительные вопросы:
В чем разница между ними в отношении использования памяти и доступа к их элементам?
В каки ...
Жадные алгоритмы
Объясните что такое "жадный алгоритм" и когда такой подход целесообразно использовать.
Можете назвать потенциальные места или задачи использования такого подхода на бэкенд-приложения?
Подсказки:
Уч ...
Бинарный поиск и его применения
Можете объяснить что такое "бинарный поиск" и рассказать где он может применяться на практике?
Давайте обсудим, как этот алгоритм может оптимизировать операции бэкенда, уменьшая пространство поиска.
...