Автор: <span>admin</span>

Алгоритмы

Обзор сложности алгоритмов: Big O на практике для C++ разработчика

Введение Все предыдущие циклы статей писали код, работающий корректно — но не всегда явно анализировали, насколько быстро этот код работает при росте объёма данных. В этой статье разберём…

Алгоритмы

Итоговый мини-проект: применение алгоритмов для оптимизации реального Qt-приложения

Введение В заключительной статье цикла, и всего плана статей в его текущем объёме, соберём итоговый проект, демонстрирующий применение разобранных алгоритмов и структур данных для оптимизации реалистичной, практической задачи…

Алгоритмы

Структуры данных для специфичных задач: куча (priority_queue), trie, union-find

Введение В завершение разбора структур данных рассмотрим три специализированные структуры, каждая решающая конкретный, узкий класс задач значительно эффективнее общих структур: кучу для эффективного доступа к минимуму/максимуму (уже использованную…

Алгоритмы

Жадные алгоритмы и их применение

Введение В отличие от динамического программирования, рассматривающего все возможные варианты решения подзадач, жадный алгоритм на каждом шаге делает локально оптимальный выбор, никогда не пересматривая его позже — в…

Алгоритмы

Динамическое программирование: концепция и практические примеры

Введение Динамическое программирование (ДП) — техника решения задач путём разбиения на подзадачи с сохранением (мемоизацией) уже вычисленных результатов подзадач, избегая повторного пересчёта одного и того же — в…

Алгоритмы

Поиск: бинарный поиск и его вариации, std::lower_bound/upper_bound

Введение Бинарный поиск как принцип, лежащий в основе поиска в сбалансированном дереве — в этой статье разберём бинарный поиск отдельно, как самостоятельный алгоритм для отсортированных линейных коллекций, и…

Алгоритмы

Кратчайшие пути: алгоритм Дейкстры и его применение в реальных задачах

Введение Как способ найти кратчайший путь по числу рёбер в невзвешенном графе — для взвешенного графа (где у разных связей разная «стоимость») нужен другой алгоритм. В этой статье…

Arduino

Управление реле и моторами из Qt-интерфейса

Введение Помимо чтения данных датчиков, частая задача — управление исполнительными устройствами: реле (включение/выключение мощных нагрузок), DC-моторы через драйверы типа L298N. В статье разберём прошивку и Qt-интерфейс для управления…

Arduino

Ультразвуковой датчик расстояния (HC-SR04): измерения в реальном времени на графике

Введение HC-SR04 — популярный, недорогой ультразвуковой датчик измерения расстояния, часто используемый в проектах автоматизации, робототехники, парковочных систем. В статье разберём прошивку для работы с этим датчиком и визуализацию…