csdn自带的编辑器不习惯,废了好大劲
var stack = new Array();
stack.push(roots); //将所有根节点置入stack中
for(var i=0;i<stack.length;i++){
//子节点置入stack中,这会导致stack长度增加,这些子节点会后续遍历
stack.push(stack[i].getChildren());
}
javascript中的Array兼具java中的List和Stack的特性 对于这种算法觉得用List实现比较合适
List<Node> list = new ArrayList<Node>();
list.addAll(roots);
for(int i=0;i<list.size();i++){
list.addAll(list.get(i).getChildren());
}