Несколько подходов для подсчёта количества рёбер в бинарном дереве:
- Обход в ширину (BFS). 1 Идёт из начальной вершины, посещает сначала все вершины, находящиеся на расстоянии одного ребра от начальной, потом — на расстоянии два ребра и так далее. 1 Алгоритм нерекурсивный (итеративный), для его реализации применяется структура данных очередь (FIFO). 1
- Обход в глубину (DFS). 1 Идёт из начальной вершины, посещая ещё не посещённые вершины без оглядки на удаленность от начальной вершины. 1 Алгоритм рекурсивный. 1
Также для подсчёта количества рёбер идеального двоичного дерева с N уровнями можно использовать подход, при котором для значений N = 1, 2, 3, … формируется ряд в виде 0, 2, 6, 14, 30, 62, …, N-й член которого равен 2N – 2. 2