me_edu
Алгоритмы и структуры данных: основыШаг 24 из 27 · 0% пройдено
Рекурсия, деревья и графы · Рекурсия, деревья и графы

Деревья и графы

Деревья и графы описывают связи между объектами.

Дерево — иерархическая структура: один корень, у каждого узла есть потомки. Так устроены файловая система (папки и подпапки), DOM веб-страницы, дерево комментариев. Частый случай — бинарное дерево поиска, где у узла не больше двух потомков и слева хранятся меньшие значения, справа большие; это даёт поиск за O(log n).

Граф — узлы (вершины), соединённые рёбрами, причём связи произвольные, в том числе циклические. Графами моделируют то, что естественно «соединено»: социальные сети (люди — дружбы), карты дорог (города — пути), интернет (страницы — ссылки).

Деревья и графы обходят двумя основными способами: • в глубину (DFS) — идём по ветке до конца, потом возвращаемся; часто реализуют рекурсией или стеком; • в ширину (BFS) — обходим уровень за уровнем; реализуют очередью. BFS находит кратчайший путь в невзвешенном графе.

Это уже продвинутые темы — но теперь вы знаете карту дальнейшего пути в алгоритмах.

Назад

Обсуждение

Войдите, чтобы участвовать в обсуждении.

Пока нет сообщений.