import java.util.*; /* * public class TreeNode { * int val = 0; * TreeNode left = null; * TreeNode right = null; * public TreeNode(int val) { * this.val = val; * } * } */ /** * NC372 插入二叉搜索树 * @author d3y1 */ public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * 树的问题 -> 终究是要转化为树的遍历问题(前序 中序 后序 层序) * * @param root TreeNode类 * @param val int整型 * @return TreeNode类 */ public TreeNode insertToBST (TreeNode root, int val) { preOrder(root, val); return root; } /** * 前序遍历 * @param root * @param val */ private void preOrder(TreeNode root, int val){ if(root == null){ return; } int num = root.val; if(val < num){ if(root.left == null){ root.left = new TreeNode(val); }else{ preOrder(root.left, val); } }else{ if(root.right == null){ root.right = new TreeNode(val); }else{ preOrder(root.right, val); } } } }