JavaScript中树的先序、中序、后序遍历

1、先序遍历

 

function preOrder(node) {
var nodes = [];
if (node != null) {
nodes.push(node);
preOrder(node.firstElementChild);
if (node.firstElementChild != node.lastElementChild) 
preOrder(node.lastElementChild);
}
return nodes;

}

 

 

2、中序遍历

function inOrder(node) {
var nodes = [];
if (node != null) {
inOrder(node.firstElementChild);
nodes.push(node);
if (node.firstElementChild != node.lastElementChild)
inOrder(node.lastElementChild);
}
return nodes;
}

 

3、后序遍历

 

function postOrder(node) {
var nodes = [];
if (node != null) {
postOrder(node.firstElementChild);
if (node.firstElementChild != node.lastElementChild)
postOrder(node.lastElementChild);
nodes.push(node);
}
return nodes;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.duanlonglong.com/qdjy/399.html