как найти листья дерева - PullRequest
       3

как найти листья дерева

3 голосов
/ 26 апреля 2011

Существует проблема, которая хочет найти центр дерева, и я хочу удалить листья, пока не будет более 2 вершин. Но как мне найти листья?

PS извините за мой английский

1 Ответ

4 голосов
/ 26 апреля 2011

Редактировать: Я только что видел, что у вас, вероятно, есть корневое дерево. Вы можете сделать DFS из дерева, и если у текущего узла нет ребра для узла, отличного от родительского, тогда вы нашли лист.

Цитирование Википедия :

Степень вершины в графе количество ребер, падающих на него. изолированная вершина является вершиной с ноль градусов; то есть вершина, которая не конечная точка какого-либо края. Лист вершина (также подвесная вершина) является вершина со степенью один.

Просто посчитайте степень каждого узла. Если это 1, тогда у вас есть лист.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...