Python实现二叉搜索树计算高度时返回None的问题求解
问题原因
BinarySearchTree类的height方法在根节点非空的分支中,仅执行了_height递归调用,没有显式返回该调用的计算结果。Python中所有未显式写return语句的函数分支,默认返回值为None,这是调用高度方法得到None的直接原因。
修复方案
仅需在height方法的else分支添加return语句,返回_height的计算结果即可,修改后的height方法代码如下:
def height(self): if self.root is None: return 0 else: return self._height(self.root, 0)
修改完成后调用height()方法即可得到正确的二叉树高度整数值。
内容的提问来源于stack exchange,提问作者Artwel
相关产品推荐
相关产品推荐

