Codility Tree Height

public class HeightOfTreeSolution {
    static int height=-1;
    public int solution(Tree T) {
        // write your code in Java SE 8
        if (T == null) return height;
        height = heightOfTree(T);
        return height;
    }
    
    public int heightOfTree(Tree node){
        if (node!=null) {
            if (node.l==null) {
                return 1+heightOfTree(node.r);
            }
            if (node.r==null) {
                return 1+heightOfTree(node.l);
            }
            else{
                return 1+Math.max(heightOfTree(node.r),heightOfTree(node.l));
            }
        }
        return 0;
    }
}

 问题描述:

Write a function:

class Solution { public int solution(Tree T); }

that, given a non-empty binary tree T consisting of N nodes, returns its height. For example, given tree T shown in the figure above, the function should return 2, as explained above. Note that the values contained in the nodes are not relevant in this task.

posted @ 2016-11-22 08:06  znbee  阅读(510)  评论(0编辑  收藏  举报