这已经在这里讨论过,但是我在下面有一个实现(在线程中从未讨论过),
public boolean isBalanced(BSTNode node) {
if(maxHeight() > (int)(Math.log(size())/Math.log(2)) + 1)
return false;
else
return true;
}
其中 maxHeight() 返回树的最大高度。基本上我正在检查 maxHeight > log(n),其中 n 是树中元素的数量。这是一个正确的解决方案吗?