喵喔喔
给你伪代码吧int ans = -1 ;
void dfs(node x , int deep){ if ( x.sons.size() == 0 ) // 没有儿子结点了
{
ans = max(ans , deep ) ;
return ;
} else { for ( int i = 0;i < x.sons.size();i ++)
dfs(x.sons[i] , deep + 1) ;
}
}node 是定义的结点结构 , ans存的答案 , 调用 dfs(root , 0 ) , 就可以了。