java用三叉链表构造二叉树_三叉链表存储二叉树 - JiaChang的个人空间 - OSCHINA - 中文开源技术交流社区...

二叉树的三叉链式存储

三叉链式存储的思想是让每个节点不仅“记住”它的左,右两个节点,还要“记住”它的父节点,因此每个节点需要left,right,parent三个指针。

a8e6638a9f267f6e9e6b7d0ea3180270.png

三叉链表存储方式是对二叉链表的一种改进,通过为树节点添加一个parent引用,可以让每个节点都能非常方便地访问其父节点。

三叉链表存储二叉树的节点定义

//三叉链表存储二叉树的节点定义

class Node{

Object data;//节点数据

Node left;//左孩子指针

Node rigth;//右孩子指针

Node parent;//父节点指针

public Object getData() {

return data;

}

}

为指定节点添加子节点

/***

* 为指定节点添加子节点

* @param parent 指定节点

* @param data新节点的数据

* @param isLift 是否为左孩子

* @return 返回新添加的节点

*/

public Node add(Node parent, E data, boolean isLeft){

if(parent==null){ <

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值