美文网首页数据结构
数据结构题目42:二叉树的前序遍历(非递归)

数据结构题目42:二叉树的前序遍历(非递归)

作者: 玲儿珑 | 来源:发表于2020-05-11 18:29 被阅读0次

    题目:若二叉树为二叉链表存储结构,写出二叉树的前序遍历的非递归算法。

    解题思路:中序遍历很相似,只是遍历到结点要及时访问。

    具体算法如下:
    这里使用到建立二叉树方法createBT(strBT)

    function preOrder1(BT) {
        let stack=new Array(MaxSize), top=-1, p=BT
        do {
            while ( p!=null ) {
                stack[++top] = p
                console.log(p.data)
                p = p.lchild
            }
            p = stack[top--]
            p = p.rchild
        } while (!(p==null&&top==-1));
    }
    
    var strBT="A(B(D,E(G)),C(F(,H)))@"
    var BT = createBT(strBT)
    postOrder1(BT)
    

    相关文章

      网友评论

        本文标题:数据结构题目42:二叉树的前序遍历(非递归)

        本文链接:https://www.haomeiwen.com/subject/jdlpnhtx.html