如何找到正确的孩子的高度减去树中左孩子的身高

时间:2014-01-17 10:05:07

标签: java data-structures binary-tree avl-tree

我在java中有这个类用于树的节点

public class Node {

Node (int v, Node lt, Node rt){
    value = v;
    left = lt;
    right = rt;
    height = 0;
    parent = null;
}

Node (int v){
    this (v, null, null);
}

int value;
int height;
Node left;
Node right;
Node parent;
}

此节点的高度为(this.right.height - this.left.height)

如果孩子是正确的孩子,

和只有1个孩子并且它的孩子是叶子的节点的高度是1,如果孩子是节点的孩子,则是-1

我该怎么做?

(我想写一个avl树)

1 个答案:

答案 0 :(得分:0)

尝试以下

public int height(Node root){
       if(root == null)return 0;
       return 1+Max(height(root.left),height(root.right));
    }

    heightDifference = (height(this.right) - height(this.left))