当前位置: 首页 > news >正文

烟草电子商务网站app制作公司

烟草电子商务网站,app制作公司,虎门多语种网站制作,canvas做的网站目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 题目给我们一棵二叉搜索树,给我们一个目标值,让我们删除节点值等于目标值的节点,并且删除之后需要保持…

目录

题目:

示例:

分析:

代码:


题目:

示例:

分析:

题目给我们一棵二叉搜索树,给我们一个目标值,让我们删除节点值等于目标值的节点,并且删除之后需要保持二叉搜索树的定义,也就是任意一个节点的左子树上的所有节点的值都小于该节点的值,右子树上的所有节点的值都大于该节点的值。

删除一个节点我们首先需要先找到这个节点,根据二叉搜索树的定义,我们遍历二叉树,如果当前节点的值大于目标值,那么目标值只能存在与当前节点的左子树,我们就接着向左子树遍历,反之向右子树遍历。

直到我们找到了目标节点,我们需要把它删除,并且还需要保持这是一棵二叉搜索树。我们可以知道目标节点的右子树上任意一个节点的值都比目标节点的左子树上任意一个节点的值更大,所以我们可以把目标节点的右子树接到目标节点的左子树的最大的节点的右子树上,再让目标节点的左子树顶替上原先目标节点的位置,这样就完成了删除目标节点的这样的操作。

我们也可以是让目标节点的右子树顶替上原先目标节点的位置,再在右子树里最小的节点的左子树接上目标节点的左子树,这样也是可以的。都是满足二叉搜索树的定义。

代码:

class Solution {
public:TreeNode* deleteNode(TreeNode* root, int key) {if(root==nullptr) return root;if(root->val==key){if(root->right==nullptr) return root->left;if(root->left==nullptr) return root->right;TreeNode* node=root->left;while(node->right) node=node->right;node->right=root->right;root=root->left;}else if(root->val<key) root->right=deleteNode(root->right,key);else if(root->val>key) root->left=deleteNode(root->left,key);return root;}
};

http://www.ds6.com.cn/news/37247.html

相关文章:

  • 西安网络公司推荐长沙网络优化产品
  • 张店网站推广四川网站推广公司
  • 北京网站建设app电子商务平台建设
  • 餐饮品牌设计服务上海搜索引擎关键词优化
  • wordpress esuseo免费工具
  • 专业的营销网站建设公司网站快速排名
  • 用hbuilder静态网站怎么做自己建网站怎么推广
  • 王建设的网站北京seo专业团队
  • 阿里巴巴网站被关闭了要怎么做自己手机怎么免费做网站
  • 服装网站建设多少钱seo网站推广的主要目的包括
  • 公司做网站的优势北京seo公司司
  • 阿里 做网站北京营销推广网站建设
  • 个人电子商务网站建设百度云
  • 移动网站排名怎么做指数分布的分布函数
  • 字幕如何做模板下载网站广东深圳疫情最新情况
  • 网站建设的毕业设计报告写一篇推广商品的软文
  • wordpress odayseo公司网站推广
  • 廊坊做网站优化2021年年度关键词排名
  • 商务网站开发课程建言百度sem竞价推广pdf
  • 制作网站的软件有那个免费微信客户管理系统平台
  • wordpress 首页动画什么公司适合做seo优化
  • 摄影师签约有哪些网站电脑优化大师
  • 济南建设厅官方网站域名备案查询站长工具
  • 商城网站建设明细上海seo优化公司
  • 网站建设知识济宁百度推广公司有几家
  • 国外数据网站怎样留别人电话在广告上
  • 企业做网站的注意事项怎么让网站排名上去
  • 运城做网站费用高吗网站注册查询
  • 婚纱摄影网站建设seo 重庆
  • 做结婚视频储存网站服装品牌策划及营销推广方案