diff --git a/typescript/226-Invert-Binary-Tree.ts b/typescript/226-Invert-Binary-Tree.ts new file mode 100644 index 000000000..0c5391b58 --- /dev/null +++ b/typescript/226-Invert-Binary-Tree.ts @@ -0,0 +1,24 @@ +/** + * Definition for a binary tree node. + * class TreeNode { + * val: number + * left: TreeNode | null + * right: TreeNode | null + * constructor(val?: number, left?: TreeNode | null, right?: TreeNode | null) { + * this.val = (val===undefined ? 0 : val) + * this.left = (left===undefined ? null : left) + * this.right = (right===undefined ? null : right) + * } + * } + */ + +function invertTree(root: TreeNode | null): TreeNode | null { + if (!root) return root + const temp: TreeNode | null = root.left + root.left = root.right + root.right = temp + + invertTree(root.left) + invertTree(root.right) + return root +}