java中根遍历后根遍历构造,恳求大佬指点!!!首先标明空子树的先根遍历序列建立一棵二叉树...

这个博客展示了如何创建一个二叉树类`BiTree`,并实现了字符串到二叉树的转换。通过`preRootTraverse`方法进行前序遍历,输出每个节点的值。示例中使用字符串`AB##CD###`构造了一个简单的二叉树,并进行了前序遍历打印。
摘要由CSDN通过智能技术生成

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

回复 甜味_猫 :

public class BiTree {

private BiTreeNode root;

public BiTree(String str) {

String s = str.replaceAll("#", "");

char[] chars = s.toCharArray();

root = new BiTreeNode(chars[0] + "");

root.setLchild(new BiTreeNode(chars[1] + ""));

root.setRchild(new BiTreeNode(chars[2] + ""));

root.getLchild().setLchild(new BiTreeNode(chars[3] + ""));

}

public void preRootTraverse() {

if (root != null) {

root.preRootTraverse();

} else {

System.out.println("二叉树为空");

}

}

}

class BitreeDemo{

public static void main(String[] args) {

String str = "AB##CD###";

BiTree biTree = new BiTree(str);

biTree.preRootTraverse();

}

}

class BiTreeNode{

@Override

public String toString() {

return "BiTreeNode{" +

"value='" + value + '\'' +

'}';

}

private String value;

private BiTreeNode lchild;

private BiTreeNode rchild;

//前序遍历

public void preRootTraverse(){

System.out.println(this.toString());

if(this.lchild != null) {

this.lchild.preRootTraverse();

}

if(this.rchild != null) {

this.rchild.preRootTraverse();

}

}

public BiTreeNode(String value) {

this.value = value;

}

public String getValue() {

return value;

}

public void setValue(String value) {

this.value = value;

}

public BiTreeNode getLchild() {

return lchild;

}

public void setLchild(BiTreeNode lchild) {

this.lchild = lchild;

}

public BiTreeNode getRchild() {

return rchild;

}

public void setRchild(BiTreeNode rchild) {

this.rchild = rchild;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值