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

找人做辅助的网站网站有哪些平台

找人做辅助的网站,网站有哪些平台,武汉网络公司靠谱吗,做网站的技术困难学习目标: 235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点 学习内容: 235. 二叉搜索树的最近公共祖先 题目链接&&文章讲解 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最…

学习目标:

  • 235. 二叉搜索树的最近公共祖先
  • 701.二叉搜索树中的插入操作
  • 450.删除二叉搜索树中的节点

学习内容:

235. 二叉搜索树的最近公共祖先

题目链接&&文章讲解
给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。

百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。

//递归法
//从上向下去递归遍历,第一次遇到 cur节点是数值在[q, p]区间中,那么cur就是 q和p的最近公共祖先。
class Solution {public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) {if(root == null) return null;//左if(root.val > p.val && root.val > q.val) {TreeNode left = lowestCommonAncestor(root.left, p, q);if(left != null) return left;}//右if(root.val < p.val && root.val < q.val) {TreeNode right = lowestCommonAncestor(root.right, p, q);if(right != null) return right;}return root;}
}//迭代法
class Solution {public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) {TreeNode cur = root;while(cur != null){if(cur.val > p.val && cur.val > q.val)  cur = cur.left;else if(cur.val < p.val && cur.val < q.val)  cur = cur.right;else return cur;}return null;}
}

701.二叉搜索树中的插入操作

题目链接&&文章讲解

//在叶子节点找到插入位置
class Solution {public TreeNode insertIntoBST(TreeNode root, int val) {//终止条件if(root == null) {TreeNode node = new TreeNode(val);return node;}//左if(val < root.val){root.left = insertIntoBST(root.left, val);}//右if(val > root.val){root.right = insertIntoBST(root.right, val);}return root;}
}

450.删除二叉搜索树中的节点

题目链接&&文章讲解

有以下五种情况:

  • 第一种情况:没找到删除的节点,遍历到空节点直接返回了找到删除的节点
  • 第二种情况:左右孩子都为空(叶子节点),直接删除节点, 返回NULL为根节点
  • 第三种情况:删除节点的左孩子为空,右孩子不为空,删除节点,右孩子补位,返回右孩子为根节点
  • 第四种情况:删除节点的右孩子为空,左孩子不为空,删除节点,左孩子补位,返回左孩子为根节点
  • 第五种情况:左右孩子节点都不为空,则将删除节点的左子树头结点(左孩子)放到删除节点的右子树的最左面节点的左孩子上,返回删除节点右孩子为新的根节点。
class Solution {public TreeNode deleteNode(TreeNode root, int key) {//终止条件//没有找到删除节点if(root == null) return null;//找到要删除的节点if(root.val == key){if(root.left ==null && root.right == null) return null;else if(root.left != null && root.right ==null) return root.left;else if(root.left == null && root.right !=null) return root.right;else  {TreeNode cur = root.right;while(cur.left != null) cur = cur.left;cur.left = root.left;return root.right;}}//处理逻辑if(key < root.val){root.left = deleteNode(root.left, key);}if(key > root.val){root.right = deleteNode(root.right, key);}return root;}
}

http://www.shuangfujiaoyu.com/news/52940.html

相关文章:

  • 谁有马和人做的网站今日热搜第一名
  • 两个网站 一个域名如何搭建个人网站
  • 张掖网站建设公司海外推广平台有哪些?
  • 成都代做网站免费自学电商教程
  • 无锡做企业网站网络营销策略有哪些
  • 嘉兴网站托管做网站优化哪家公司好
  • 三叶草gy8566seo关键词优化软件怎么样
  • 网站开发技能营销策划机构
  • 帮一个公司做网站多少钱百度大盘指数
  • 网站开发包含网页设计吗b站入口2024已更新
  • 手机如何做微商城网站设计站长工具网站
  • 阿里巴巴网站建设公司seo关键词怎么选择
  • 做网站赚谁的钱百度爱采购关键词优化
  • 商品网站模板外贸建站与推广
  • dede替换网站模板学历提升哪个教育机构好一些
  • 广州网站排名专业乐云seo电子网址怎么创建
  • 做微电网的公司网站免费建立一个网站
  • 怎么给新公司做网站软件推广平台
  • 购买腾讯备案网站网络营销外包公司
  • wordpress主题js文件在哪高手优化网站
  • 注册公司费用多少淄博搜索引擎优化
  • 怎么检查外包做的网站营销推广文案
  • 网站开发职业前景百度风云榜明星
  • 做网站复杂吗友情链接收录
  • 做低价的跨境电商网站seo博客模板
  • 有手机网站了还要微网站吗wap网站html5
  • 网站开发背景图片自助建站系统代理
  • 无锡网站制作8seo官网优化怎么做
  • 企业营销网站泉州全网推广
  • 长沙百度网站建设徐州seo顾问