http://meixx.go1.icpcn.com/mycode/xxtree/XXTree.js//按照tf函数的遍历条件,遍历以node为根的树结构,对所有满足条件函数cf的节点,进行af操作
XXTree.prototype.traverseTree = function(node,tf,cf,af){
    var nodeStack = [];
    var rootNode = node;
    var idx = 0;
    for(;;){
        if(node){
            if(tf(node)){
                if(cf(node)) af(node);
                nodeStack.push({index:idx,nodeRef:node});
                idx = 0;
                node = node.childNodes[idx];
            }else{
                if(cf(node)) af(node);
                if(node == rootNode) break;
                node = node.pNode.childNodes[++idx];
            }
        }else{
            node = nodeStack.pop();
            if(nodeStack.length == 0) break;
            idx = node.index + 1;
            node = node.nodeRef.pNode.childNodes[idx];
        }
    }
}