def main(): print( isSymmetric( TreeNode.make([5, 4, 1, None, 1, None, 4, 2, None, 2, None]))) # False print(isSymmetric(TreeNode.make([1, 2, 2, 3, 4, 4, 3]))) # True print(isSymmetric(TreeNode.make([1, 2, 2, None, 3, None, 3]))) # False
def main(): print(hasPathSum(TreeNode.make([]), 0)) # False print( hasPathSum(TreeNode.make([3, 4, 5, 1, 2, None, None, None, None, 0]), 9)) # True print( hasPathSum( TreeNode.make( [5, 4, 8, 11, None, 13, 4, 7, 2, None, None, None, 1]), 22))
def test(nums: List[int], p: int, q: int) -> TreeNode: root = TreeNode.make(nums) # print(root.show()) node = commonAncestor(root, root.find(p), root.find(q)) return node.val
def main(): print(maxDepth(TreeNode.make([3, 9, 20, None, None, 15, 7]))) # 3 print(maxDepth(TreeNode.make([]))) # 3
def main(): print(maxPathSum(TreeNode.make([-2, -1, -1]))) # 10 print(maxPathSum(TreeNode.make([1, 2, 3, 4]))) # 10 print(maxPathSum(TreeNode.make([1, -2, -3, 1, 3, -1, None, -1]))) # 3 print(maxPathSum(TreeNode.make([1, 2, 3]))) # 6 print(maxPathSum(TreeNode.make([-10, 9, 20, None, None, 15, 7]))) # 42
def main(): print(inorderTraversal(TreeNode.make([1, None, 2, 3]))) # [1, 3, 2] nums = [5, 4, 1, None, 1, None, 4, 2, None, 2, None] print(inorderTraversal(TreeNode.make(nums))) # [4, 2, 1, 5, 1, 2, 4]
def main(): print(isValidBST(TreeNode.make([-2147483648]))) # True print(isValidBST(TreeNode.make([1, 1]))) # False print(isValidBST(TreeNode.make([2, 1, 3]))) # True print(isValidBST(TreeNode.make([5, 1, 4, None, None, 3, 6]))) # False print(isValidBST(TreeNode.make([10, 5, 15, None, None, 6, 20]))) # False
def main(): print(zigzagLevelOrder(TreeNode.make([3, 9, 20, None, None, 15, 7])))
def main(): print(levelOrder(TreeNode.make([3, 9, 20, None, None, 15, 7]))) # [[3], [9, 20], [15, 7]] print(levelOrder(TreeNode.make([]))) # []
def main(): print(kthSmallest(TreeNode.make([3, 1, 4, None, 2]), 1)) # 1 print(kthSmallest(TreeNode.make([5, 3, 6, 2, 4, None, None, 1]), 3)) # 3
def main(): root = TreeNode.make([1, 2, 3, None, 5, None, 4]) print(rightSideView(root)) # [1, 3, 4]