@@ -0,0 +1,1578 @@
+package org.pilgrim.leetcode.y2022;%0A%0Apublic class TreeNode %7B%0A    TreeNode left;%0A    TreeNode right;%0A    int val;%0A    %0A    public TreeNode(int val) %7B%0A        this.val = val;%0A    %7D%0A    %0A    private TreeNode minValue(TreeNode node) %7B%0A        TreeNode curr = node;%0A        %0A        while(curr != null && curr.left != null) %7B%0A            curr = curr.left;%0A        %7D%0A        %0A        return curr;%0A    %7D%0A    %0A    public TreeNode insert(TreeNode root, int val) %7B%0A        if(root == null) %7B%0A            return new TreeNode(val);%0A        %7D%0A        %0A        if(root.val %3E val) %7B%0A            root.left = insert(root.left, val);%0A        %7D%0A        else if(root.val %3C val) %7B%0A            root.right = insert(root.right, val);%0A        %7D%0A        %0A        return root;%0A    %7D%0A    %0A    public TreeNode delete(TreeNode root, int val) %7B%0A        if(root == null) %7B%0A            return root;%0A        %7D%0A        %0A        if(root.val %3E val) %7B%0A            root.left = delete(root.left, val);%0A        %7D%0A        else if(root.val %3C val) %7B%0A            root.right = delete(root.right, val);%0A        %7D%0A        else %7B%0A            if(root.left == null) %7B%0A                return root.right;%0A            %7D%0A            else if(root.right == null) %7B%0A                return root.left;%0A            %7D%0A            else %7B%0A                TreeNode node = minValue(root.right);%0A                root.val = node.val;%0A                root = delete(root.right, node.val);%0A            %7D%0A        %7D%0A        %0A        return root;%0A    %7D%0A%0A    public static void main(String%5B%5D args) %7B%0A        // TODO Auto-generated method stub%0A%0A    %7D%0A%0A%7D%0A

add tree insert, delete