父节点表示法的思想是让每个节点持有它的父节点的索引,这种方式是从子节点出发;反过来可以让父节点持有它的所有子节点。这种方式下,由于每个父节点需要记住多个子节点,因此必须采用“子节点链”表示法。如下图:
Java实现代码
package com.liuhao.DataStructures;
import java.util.ArrayList;
import java.util.List;
public class TreeChild<E> {
private static class ChildNode {
private int pos;// 记录当前节点位置
private ChildNode next;
public ChildNode(int pos, ChildNode next) {
this.pos = pos;
this.next = next;
}
}
public static class Node<T> {
T data;
ChildNode first;// 记录第一个子节点
public Node() {
}
pub