首页 > 其他 > 详细

二叉搜索树的插入

时间:2019-10-12 19:24:51      阅读:82      评论:0      收藏:0      [点我收藏+]
 1 class Solution {
 2 public:
 3     TreeNode* insertIntoBST(TreeNode* root, int val) {
 4         if(!root) return root;
 5         TreeNode* p=root,*pre=NULL;
 6         while(p)
 7         {
 8             pre=p;
 9             if(p->val>val)
10                 p=p->left;
11             else if(p->val<val)
12                 p=p->right;
13             else return root;//当前节点的值等于val 不需要在插入
14         }
15         //找到要插入的节点的前一个节点pre l_tag=1代表应该插入到pre节点的左边 l_tag等于0代表插入到pre结点的右边
16         TreeNode *node=new TreeNode(val);
17         if(pre->val>val) pre->left=node;
18         else pre->right=node;
19         return root;
20     }
21 };

 

二叉搜索树的插入

原文:https://www.cnblogs.com/lancelee98/p/11663227.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!