我被困住了,因为我不知道如何在非二叉树中获取特定节点的所有子节点。
例如,根节点是A。
A = {B,C}
B = {D,E,F}
E = {G}
我想获得B = {D,E,F,G}的所有子节点
我能怎么做?非常感谢你。
您可以递归获取子节点。
首先,遍历树以获取初始节点B
。之后,请应用以下递归伪代码:
void get_children(Node *node, list<Node*>& res) {
for each child in node->children {
res.add(child);
get_children(child, res);
}
}
传递B
到get_children
,以及一个空节点列表。该函数会将所有子项添加到传递给它的列表中。确保您通过引用传递了列表;否则,该功能将不会修改您的列表。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句