如果给定以下或类似的树结构:
``` A / | \ B C D / \ | E F G / \ H I ```
我想要返回字符串 "ZYXWVUT"。我知道如何处理二叉树,但不知道如何处理多叉树。非常感谢您的帮助。
``` A / | \ B C D / \ | E F G / \ H I ```
我想要返回字符串 "ZYXWVUT"。我知道如何处理二叉树,但不知道如何处理多叉树。非常感谢您的帮助。
function post_order(Tree node)
foreach n in node.children
post_order(n)
print(node.text)
class Node {
String data;
ArrayList<Node> node_list;}
public void traverse_tree(Node n){
if(n.node_list.isEmpty()){
System.out.print(n.data);
}
else{
for(Node current_node:n.node_list){
traverse_tree(current_node);
}
System.out.println(n.data);
}
}
类似这样应该可以做到
public void traverse(){
for(Child child : this.children){
child.traverse();
}
System.out.print(this.value);
}
ZYXWVUT
,那么这只是深度优先列表... - Rogue