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

内江网站建设新闻logo设计网站哪个好一些

内江网站建设新闻,logo设计网站哪个好一些,怎么自己建立一个网站后台,wordpress获取子菜单修剪二叉搜索树 题目详细#xff1a;LeetCode.669 做这道题之前建议先看视频讲解#xff0c;没有想象中那么复杂#xff1a;代码随想录—修剪二叉搜索树 由题可知#xff0c;需要删除节点值不在区间内的节点#xff0c;所以可以得到三种情况#xff1a; 情况一#…修剪二叉搜索树 题目详细LeetCode.669 做这道题之前建议先看视频讲解没有想象中那么复杂代码随想录—修剪二叉搜索树 由题可知需要删除节点值不在区间内的节点所以可以得到三种情况 情况一root.val low情况二root.val high情况三low root.val high当节点满足情况一和情况二的条件时删除该节点 但被删除节点的子树可能存在值在区间内的节点利用二叉搜索树的特点可得 情况一root.val lowroot左子树上的节点值都比root.val小右子树上的节点值都比root.val大所以满足区间的节点只会在右子树上出现递归修剪其右子树并返回新的子节点情况二root.val highroot左子树上的节点值都比root.val小右子树上的节点值都比root.val大所以满足区间的节点只会在左子树上出现递归修剪其左子树并返回新的子节点情况三low root.val high说明当前节点不需要被删除递归修剪其左右子树返回修剪好的二叉搜索树的新的根节点 Java解法递归 class Solution {public TreeNode trimBST(TreeNode root, int low, int high) {if(null root) return null;// 根据二叉搜索树的特点可知if(root.val low){// 删除节点的右子树中可能存在值在区间内的节点// 返回修剪好的右子树的新的子节点return trimBST(root.right, low, high);}else if(root.val high){// 删除节点的左子树中可能存在值在区间内的节点// 返回修剪好的左子树的新的子节点return trimBST(root.left, low, high);}// else if(root.val low root.val high)// 递归修剪左右子树root.left trimBST(root.left, low, high);root.right trimBST(root.right, low, high);// 返回修剪好的二叉搜索树的新的根节点return root;} }将有序数组转换为二叉搜索树 题目详细LeetCode.108 由题可知 数组中的元素是有序排序的转换的结果是为一棵高度平衡的二叉搜索树 要想使结果的二叉树高度平衡 我们可以找中间值根据中间值的下标将数组分为长度相近的两个子数组利用数组有序的特点其划分后的子数组依旧是有序的 左边的数值较小 中间值右边的数值 中间值 所以我们可以将中间值作为根节点左边的数值作为左子树的节点右边的数值作为右子树的节点采用递归按照以上的逻辑不断划分数组和子树当nums无法再分时将空节点或节点返回给上一层接收决定了节点的位置最后返回转换完成的二叉搜索树的根节点 Java解法递归 class Solution {public TreeNode sortedArrayToBST(int[] nums) {if(nums.length 0) return null;else if(nums.length 1) return new TreeNode(nums[0]);// 计算中间值的位置并划分构建左右子树的子数组int mid nums.length / 2;int[] left_nums Arrays.copyOfRange(nums, 0, mid);int[] right_nums Arrays.copyOfRange(nums, mid1, nums.length);// 最中间的数值作为树的根节点递归构建左右子树TreeNode root new TreeNode(nums[mid]);root.left sortedArrayToBST(left_nums);root.right sortedArrayToBST(right_nums);// 返回构建完成的二叉搜索树的根节点return root;} }把二叉搜索树转换为累加树 题目详细LeetCode.538 做这道题之前建议先看视频讲解没有想象中那么复杂代码随想录—把二叉搜索树转换为累加树 Java解法递归双指针法 class Solution {int pre 0;public TreeNode convertBST(TreeNode root) {this.inorder(root);return root;}public void inorder(TreeNode cur){if(null cur) return;inorder(cur.right);cur.val this.pre;this.pre cur.val;inorder(cur.left);} }
http://www.eeditor.cn/news/120341/

相关文章:

  • 嘉兴模板建站定制网站php网站建设面试
  • 没有防盗链的网站网站建设内容策划
  • 做营销网站的企业电商网站开发平台哪个好
  • 那里有网站建设网站建设实习业务介绍
  • 百度网站建设电话个人卖货平台
  • 龙华品牌网站建设html5视频标签
  • 如何识别网站的建站程序p2p商城网站建设
  • 导购分享网站模板重写路由 wordpress
  • 网站管理系统后台如何注册网站域名
  • 中文商城html网站模板外贸建站哪家公司专业
  • 金融网站建设银行关键词排名优化软件策略
  • 阿里云建网站费用免费logo制作软件
  • 建设银行手机网站微信小程序代码生成器
  • 互联网一二线大厂名单上海知名的seo推广咨询
  • 网站引流是什么意思青海哪家做网站的公司最大
  • 截图按钮图标素材网站淄博网站制作定制推广
  • 网站基础模块建设网站用户后台是怎么做的
  • 佛山cms模板建站温州专业做网站
  • 检察门户网站 建设意义网站开发一般会用到什么语言
  • 用什么做视频网站比较好做网站推广优化
  • 网站推广软文欣赏展示型手机网站
  • 网站推广网室内设计和网站建设哪个前景好
  • 电子商务网站开发基本流程华为手机价格一览表
  • 带有客户案例的网站门户网站建设经验总结报告
  • 公司做网站之前要准备什么软件佛山房地产网站建设
  • 网站建设网点邢台市网上家长学校
  • 龙岩网站设计 都找推商吧系统湖南常德文理学院
  • 网站建设需要的网络技术多功能创意小产品设计
  • 成都 做网站 模版百度登录页面
  • 嘉兴php网站开发健身网站开发开题报告