https://www.youtube.com/watch?v=jvskFC2dYXQ

Лекция для программистов: вы узнаете три основных подхода к решению задач с помощью дерева.

Данные, имеющие иерархическую систему, удобно представлять с помощью деревьев. Такая система представляет собой конечное множество элементов, называемых узлами или вершинами. На самом высоком уровне иерархии располагается единственный узел, называемым корнем. Чтобы представить, как это выглядит, достаточно вспомнить генеалогическое древо.

Продвинутое динамическое программирование: Андрей Станкевич для Сириус.Лекториум