数据结构

数据结构题目45:二叉树的建立

2020-05-11  本文已影响0人  玲儿珑

题目: 建立一棵二叉树。

解题思路:用单个字符表示二叉树中一个结点的数据,这里采用前序遍历算法。建立二叉树的过程如下:
1、输入一个根结点。
2、若输入的是”“(空格字符),则表明二叉树为空,置T为NULL。
3、若输入的是”“(空格字符),则将该字符赋给T->data,然后依次递归地建立它的左子树T->lchild和右子树T->rchild。

具体算法如下:

class Node{
    constructor (data, lchild, rchild) {
        this.data = data,
        this.lchild = lchild
        this.rchild = rchild
    }
}
function buildBT() {
    if ( i<len ) {
        ch = str.charAt(i++)    
    }
    if ( ch=='  ' ) {
        return null;
    } else {
        let T = new Node(ch, null, null)
        T.lchild = buildBT()
        T.rchild = buildBT()
        return T
    }
}

var str = "ABC  DE  F  G   "
var ch = ''
var len = str.length, i=0
buildBT()
上一篇 下一篇

猜你喜欢

热点阅读