首页 > 代码库 > 二叉树的三叉链表存储及其Java实现

二叉树的三叉链表存储及其Java实现

三叉链表存储的思想是让每个节点持有三个引用parent、left、right,分别指向其父节点、左子节点和右子节点。如下图所示:

基于三叉链表的二叉树的逻辑结构

因此,三叉链表存储的节点大致如:

class Node{
        T data;
        Node parent;
        Node left;
        Node right;
    }
Java实现代码:

package com.liuhao.DataStructures;

import com.liuhao.DataStructures.TwoLinkBinTree.TreeNode;

public class ThreeLinkBinTree<E> {

	public static class TreeNode{
		Object data;
		TreeNode parent;
		TreeNode left;
		TreeNode right;
		
		public TreeNode() {
		}
		
		public TreeNode(Object data) {
			this.data = http://www.mamicode.com/data;>从上面的代码可以看出,三叉链表存储只是对而二叉链表的改进,通过增加一个parent的引用,可以让每个节点都能方便地访问其父节点。