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

电子商务网站建设教案洛阳网站建设电话

电子商务网站建设教案,洛阳网站建设电话,公司注册地址和经营地址不一致可以吗,住房城乡建设干部学院网站题目描述 给定二叉树根结点 root ,此外树的每个结点的值要么是 0,要么是 1。返回移除了所有不包含 1 的子树的原二叉树。( 节点 X 的子树为 X 本身,以及所有 X 的后代。)示例1: 输入: [1,null,0,0,1] 输出: [1,null,0,null,1]示例2: 输入: […

题目描述

给定二叉树根结点 root ,此外树的每个结点的值要么是 0,要么是 1。返回移除了所有不包含 1 的子树的原二叉树。( 节点 X 的子树为 X 本身,以及所有 X 的后代。)示例1:
输入: [1,null,0,0,1]
输出: [1,null,0,null,1]示例2:
输入: [1,0,1,0,0,0,1]
输出: [1,null,1,null,1]示例3:
输入: [1,1,0,1,1,0,1,0]
输出: [1,1,0,1,1,null,1]说明:给定的二叉树最多有 100 个节点。
每个节点的值只会为 0 或 1 。来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/binary-tree-pruning
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

思路

用【产品经理法】的思维来解决递归问题。

产品

假设我们已经有了一个 pruneTree 方法,可以把一棵树中不包含 1 的枝节删掉。

子问题

明显是 pruneTree(root.left) 和 pruneTree(root.right)

大小问题的关系

首先,对于 root,我们用 pruneTree(root.left) 和 pruneTree(root.right) 的结果分别替换掉原本的 root.left 和 root.right。接着,再决定当前这棵树要不要保留。

  • 如果此时左右子树有一个不为空的话,那说明这棵树是要保留的,直接返回 root 就行。
  • 如果左右子树都为空,那我们就判断 root.val 的值,等于 1 就返回 root,等于 0 就返回 null 把这棵树移除。

递归出口

空节点直接返回 null 就行。

代码

TypeScript Code

/*** Definition for a binary tree node.* class TreeNode {*     val: number*     left: TreeNode | null*     right: TreeNode | null*     constructor(val?: number, left?: TreeNode | null, right?: TreeNode | null) {*         this.val = (val===undefined ? 0 : val)*         this.left = (left===undefined ? null : left)*         this.right = (right===undefined ? null : right)*     }* }*/function pruneTree(root: TreeNode | null): TreeNode | null {if (!root) return null;root.left = pruneTree(root.left);root.right = pruneTree(root.right);return root.left || root.right || root.val === 1 ? root : null;
}

复杂度分析

  • 时间复杂度:$O(N)$,N 为二叉树节点数。
  • 空间复杂度:$O(H)$,H 为二叉树的高度,递归栈的最大空间。
http://www.yayakq.cn/news/241805/

相关文章:

  • 个人网站icp备案教程网站宽度多少合适
  • 专做负面的网站购物网站开发教程 视频
  • 怎么建立自己的网站上海市建筑业官网
  • saas建站东莞网站建设总结
  • 广州wap网站建设园林景观设计公司销售培训知识
  • 公司网站排名优化手段手机网站头部代码
  • 网站制作前必须做的事情有哪些网页传奇公益服
  • 中国站长素材网怎么制作网站横幅教案
  • wordpress切换成中文重庆百度推广优化排名
  • 福州小型网站建设线上营销活动方案
  • 有没有做网站源代码修改的网页截图快捷键
  • 上海网站建设的企业苏州外贸网站建站
  • 个人网站需要什么页面江苏企业seo推广
  • 珠海建设网站公司哪家好中国空间站简笔画
  • 天河岗顶棠下上社网站建设公司3d展示网站源码
  • 天津网站建设q479185700惠微信公众平台入口
  • qq钓鱼网站建设flash网站素材下载
  • 全网网站建设设计模板网站有什么不好
  • 网站在当地做宣传网站备案背景布
  • 谁有手机可以上的网站青岛做优化网站哪家好
  • 东莞清溪镇做网站公司东道设计理念
  • 怎样找出那些没有做友链的网站微信小程序在哪里找?
  • 合肥做网站费用品牌整合营销机构
  • 图标的网站网络营销的5种营销方式
  • 西乡县门户网站建筑企业网站设计
  • 大型网站开发考试wordpress整站安装
  • 主色调为绿色的网站代理游戏
  • 贵阳网站建设建网站卖饮料
  • 广州企业建站模板wordpress进不去数据库
  • 阿里巴巴网站规划花都网站(建设信科网络)