Leetcode 701. 二叉搜索树中的插入操作
发布时间:2020-12-14 04:22:10 所属栏目:大数据 来源:网络整理
导读:题目链接 https://leetcode.com/problems/insert-into-a-binary-search-tree/description/ 题目描述 给定二叉搜索树(BST)的根节点和要插入树中的值,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 保证原始二叉搜索树中不存在新值。 注意,可能存
题目链接https://leetcode.com/problems/insert-into-a-binary-search-tree/description/ 题目描述给定二叉搜索树(BST)的根节点和要插入树中的值,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 保证原始二叉搜索树中不存在新值。 注意,可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索树即可。 你可以返回任意有效的结果。 例如, 给定二叉搜索树: 4 / 2 7 / 1 3 和 插入的值: 5 你可以返回这个二叉搜索树: 4 / 2 7 / / 1 3 5 或者这个树也是有效的: 5 / 2 7 / 1 3 4 题解二叉搜索树的插入,依次遍历二叉树,找到插入节点的位置,插入即可。 代码/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ class Solution { public TreeNode insertIntoBST(TreeNode root,int val) { if (root == null) { return new TreeNode(val); } TreeNode cur = root; TreeNode pre = null; while (cur != null) { pre = cur; if (cur.val > val) { cur = cur.left; if (cur == null) { pre.left = new TreeNode(val); } } else { cur = cur.right; if (cur == null) { pre.right = new TreeNode(val); } } } return root; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |