🏆
.NET Developer Roadmap
  • README
  • Tech Skills
    • Язык C#
      • LINQ
      • Многопоточность и Асинхронность
      • Expression Trees
      • Рефлексия
      • Диагностика
    • Системы контроля версий
    • Технологии
      • .Net Framework / .Net Core
      • Фреймворки доступа к данным
        • Dapper
        • Entity Framework
      • Task Scheduling
      • Good to Know Libraries
    • Обеспечение качества
      • Тестирование
      • Рефакторинг
      • Code Review
      • Метрики и мониторинг
      • Работа с техническим долгом
    • Базы Данных
      • T-SQL
      • NoSQL
      • Search Engines
      • Cloud Databases
    • Принципы и методологии
      • Шаблоны проектирования
      • Шаблоны уровня доступа к данным
      • ООП
      • SOLID
      • Inversion of Control
      • Архитектурные шаблоны
        • Command Query Responsibility Segregation, CQRS
        • Domain-driven design, DDD
    • Построение Веб-сервисов
      • HTTP, REST, Веб-фреймворки
      • Логирование
      • Кэширование
      • Авторизация и Аутентификация
      • Web Servers
    • Алгоритмы и Структуры Данных
    • Распределённые системы и Микросервисы
      • Шаблоны проектирования
      • Семантики доставки
      • Message Brokers
      • Message-Bus
      • Docker
      • Kubernetes
      • Консенсус в распределенных системах
    • Автоматизация цикла разработки
    • Полезные ссылки
  • Personal Skills
    • Методологии разработки
Powered by GitBook
On this page
  • Темы:
  • Контрольные вопросы:
  • Источники:

Was this helpful?

  1. Tech Skills

Алгоритмы и Структуры Данных

Темы:

  • Понимание Big O нотации

  • Простые алгоритмы поиска: линейный поиск и бинарный поиск

  • Понимание основных алгоритмов сортировки: пузырьковая сортировка (Bubble Sort), сортировка вставками (Insertion Sort), быстрая сортировка (Quick Sort), сортировка слиянием (Merge Sort)

  • Работа с основными структурами данных и понимание их внутреннего устройства: массив, стек, очереди, списки односвязные/двусвязные, хеш-таблица | Принципы LIFO и FIFO

  • Значения Big O для операций со структурами данных и алгоритмов сортировок

  • Внутреннее устройство хеш-таблиц, Хеш-функции, Коллизии

  • Деревья и Бинарные деревья: Структура, Построение, Обход (Pre-Order, In-Order, Post-Order), Поиск (DFS, BFS), Вставка элементов

  • Оценка сложности алгоритмов

  • Виды графов: Однонаправленные и Двунаправленные, Алгоритмы поиска на графах: DFS, BFS, Дейкстра

Контрольные вопросы:

  • Что показывает Big O нотация?

  • По каким двум параметрам можно оценивать сложность алгоритма?

  • Чему равна Big O для бинарного поиска?

  • Чему равна Big O для операции обращения к ячейке массива по индейсу?

  • Опишите алгоритм Сортировки слиянием (Merge Sort)?

  • Чему равна Big O для операции извлечения значения по ключу из хеш-таблицы?

  • Опишите реализацию алгоритма поиска в ширину (BFS) для дерева?

  • В какие случаях для деревьев лучше использовать DFS, а в каких BFS?

  • Почему может возникнуть коллизия в хеш-таблицах?

  • Как оценить сложность алгоритма?

  • Опишите принцип работы алгоритма Дейкстры.

Источники:

Книги:

Курсы:

Статьи:

PreviousWeb ServersNextРаспределённые системы и Микросервисы

Last updated 5 years ago

Was this helpful?

The Algorithm Design Manual
Алгоритмы: теория и практика. Методы
Big O
Описание алгоритмов сортировки и сравнение их производительности
Важнейшие структуры данных, которые вам следует знать к своему собеседованию по программированию
Know Thy Complexities!
Алгоритмы на графах
Префиксное дерево