我写了一段代码用于查找二叉树的直径。 需要以下建议:
- 我是否可以不使用类级别的静态变量来实现这个功能?
这个算法是否可行/有什么建议?
public class DiameterOfTree {
public static int diameter = 0;
public static int getDiameter(BinaryTreeNode root) {
if (root != null) {
int leftCount = getDiameter(root.getLeft());
int rightCount = getDiameter(root.getRight());
if (leftCount + rightCount > diameter) {
diameter = leftCount + rightCount;
System.out.println("---diameter------------->" + diameter);
}
if ( leftCount > rightCount) {
return leftCount + 1;
}
return rightCount + 1;
}
return 0;
}
}