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

房地产开发网站建设研发网站建设报价

房地产开发网站建设,研发网站建设报价,做音响的是哪个网站,深圳网站设计哪家公司好问题#xff1a; ● 235. 二叉搜索树的最近公共祖先 ● 701.二叉搜索树中的插入操作 ● 450.删除二叉搜索树中的节点 首先#xff0c;二叉搜索树是一种常见的数据结构#xff0c;它具有以下特点#xff1a; 每个节点最多有两个子节点#xff0c;分别为左子节点和右子节…问题 ● 235. 二叉搜索树的最近公共祖先 ● 701.二叉搜索树中的插入操作 ● 450.删除二叉搜索树中的节点 首先二叉搜索树是一种常见的数据结构它具有以下特点 每个节点最多有两个子节点分别为左子节点和右子节点左子节点的值小于父节点的值右子节点的值大于父节点的值没有重复的节点值。 在刷题过程中我遇到了以下三道题目 二叉搜索树的最近公共祖先该题目要求在一个二叉搜索树中找到两个节点的最近公共祖先。我的解题思路是从根节点开始遍历二叉搜索树如果两个节点的值都小于当前节点的值说明它们都在当前节点的左子树中如果两个节点的值都大于当前节点的值说明它们都在当前节点的右子树中如果一个节点的值小于当前节点的值另一个节点的值大于当前节点的值说明它们的最近公共祖先就是当前节点。具体实现可以使用递归或者迭代方式时间复杂度为O(logn)。 二叉搜索树中的插入操作该题目要求在一个二叉搜索树中插入一个节点。我的解题思路是从根节点开始遍历二叉搜索树如果插入节点的值小于当前节点的值就去遍历左子树如果插入节点的值大于当前节点的值就去遍历右子树。一直遍历到某个节点的左子节点或右子节点为空时就把插入节点作为该节点的左子节点或右子节点。具体实现可以使用递归或者迭代方式时间复杂度为O(logn)。 删除二叉搜索树中的节点该题目要求在一个二叉搜索树中删除一个节点。我的解题思路是首先找到要删除的节点如果该节点有两个子节点就找到它的后继节点即右子树中最小的节点把后继节点的值复制到要删除的节点中然后把要删除的节点变成后继节点如果该节点只有一个子节点或没有子节点就直接把该节点删除并把它的子节点接到它的父节点上。具体实现可以使用递归或者迭代方式时间复杂度为O(logn)。 总结一下二叉搜索树是一种非常重要的数据结构在刷题过程中我对它的特点和操作有了更深入的理解。对于二叉搜索树的操作递归和迭代实现都可以具体选择哪种方式要根据具体情况而定。在Java中可以使用TreeNode类来表示二叉树节点具体实现可以参考以下代码 class TreeNode {int val;TreeNode left;TreeNode right;TreeNode(int x) { val x; } }class Solution {public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) {if (root null || root p || root q) {return root;}if (root.val p.val root.val q.val) {return lowestCommonAncestor(root.left, p, q);} else if (root.val p.val root.val q.val) {return lowestCommonAncestor(root.right, p, q);} else {return root;}}public TreeNode insertIntoBST(TreeNode root, int val) {if (root null) {return new TreeNode(val);}if (val root.val) {root.left insertIntoBST(root.left, val);} else {root.right insertIntoBST(root.right, val);}return root;}public TreeNode deleteNode(TreeNode root, int key) {if (root null) {return null;}if (key root.val) {root.left deleteNode(root.left, key);} else if (key root.val) {root.right deleteNode(root.right, key);} else {if (root.left null) {return root.right;} else if (root.right null) {return root.left;} else {TreeNode minNode getMin(root.right);root.val minNode.val;root.right deleteNode(root.right, minNode.val);}}return root;}public TreeNode getMin(TreeNode node) {while (node.left ! null) {node node.left;}return node;} }
http://www.dnsts.com.cn/news/257539.html

相关文章:

  • 国内做音乐网站盲盒怎么制作教程
  • 做英文小说网站地图设计网站
  • 易县网站建设杭州网页设计培训机构
  • 平面设计相关的网站有哪些内容怎么在后台设计网站
  • 做教育网站挣钱西安官网优化技术
  • 四川省建设信息网站做外贸网站空间多少g
  • 有专门做电商网站的CMS吗ps网页设计说明书
  • 湖州哪里做网站企业信息查询app
  • 四川省建设厅网站官网海南在线分类信息
  • 西安市网站建设公司新建html网站
  • linux 什么做网站好百度怎么精准搜关键词
  • html5 wap网站制作网站的最大公司
  • 法拍重庆网站网站设计教程视频下载
  • 自贡住房和城乡建设厅网站网站制作价格便宜
  • 网站建设设计服务公司网站备案核验照片背景
  • 雇人做淘宝网站多少钱电子商务网站调研报告
  • 空间站天宫vr全景网络整合营销六大模型
  • 做网站数据需要的软件做网站具体流程步骤
  • 用什么网站做pathway分析代运营一家店铺多少钱
  • 北京网站seo排名优化旅游网站制作文献
  • 物流网站建设平台dw手机网站建设
  • 建设网站模式网上外贸网站怎么做
  • 网站入口设计wordpress禁用用户名
  • 做调查问卷权威网站信息网官网
  • 勤哲网站开发视频如何修改网站域名
  • 公司网站建设应注意中国核工业华兴建设有限公司
  • 邱县手机网站建设怎么做百度推广网站
  • 免费建网站知乎个人网站 论坛
  • 保定电商网站建设做思维导图的在线网站
  • 六安哪里有做网站的怎么免费搭建一个网站