Chr*_*isW 46
使用递归的算法如下:
printNode(Node node)
{
printTitle(node.title)
foreach (Node child in node.children)
{
printNode(child); //<-- recursive
}
}
Run Code Online (Sandbox Code Playgroud)
这是一个版本,它还跟踪递归的嵌套程度(即我们是否打印了root,grand-children,grand-grand-children等的子项):
printRoot(Node node)
{
printNode(node, 0);
}
printNode(Node node, int level)
{
printTitle(node.title)
foreach (Node child in node.children)
{
printNode(child, level + 1); //<-- recursive
}
}
Run Code Online (Sandbox Code Playgroud)