我目前正在学习python,遇到了这个功能。
def min(root, min_t): # min_t is the initially the value of root
if not root:
return min_t
if root.key < min_t:
min_t = root.key
min_t = min(root.left, min_t)
min_t = min(root.right, min_t)
return min_t
我对“if not root”的含义感到很困惑。它试图给出什么条件?如果“根”不是什么? “如果”试图进行什么比较?
更新:根是一棵二叉树,它有子树 self.left 和 self.right。 In 也可以是 None。如果节点是叶子,就是这种情况。
请您参考如下方法:
在 python 中,您不必将某些东西与其他东西进行比较。
if root 默认检查变量 root 是否有内容,或者它是否为空变量。 让我通过示例向您解释:
if ""
if 0
if None
if []
if {}
if ()
都会返回False
而任何其他值都会返回 True。
