判断一棵树是否是完全二叉树(python)

    技术2022-07-10  112

    核心思路: 1.如果有右节点,没有左节点,直接返回False 2.如果左右节点都没有,或者只有左节点,就看看后面的节点,必须是叶节点,不能有子节点。(就是看看这是不是最后一排。)

    res=[root] flag=0 while res: tmp=res.pop(0) if tmp.left: res.append(tmp.left) if tmp.right: res.append(tmp.right) if tmp.right and not tmp.left: return False if flag: if tmp.left or tmp.right: return False #左右节点都没有,或者只有左节点 if (tmp.left and not tmp.right) or (not tmp.left and not tmp.right): flag=1 return True
    Processed: 0.009, SQL: 9