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.