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

南阳市网站建设青岛网站定做

南阳市网站建设,青岛网站定做,空间网架,好看的模板来源#xff1a;力扣#xff08;LeetCode#xff09; 描述#xff1a; 给出二叉树的根节点 root#xff0c;树上每个节点都有一个不同的值。 如果节点值在 to_delete 中出现#xff0c;我们就把该节点从树上删去#xff0c;最后得到一个森林#xff08;一些不相交的…来源力扣LeetCode 描述 给出二叉树的根节点 root树上每个节点都有一个不同的值。 如果节点值在 to_delete 中出现我们就把该节点从树上删去最后得到一个森林一些不相交的树构成的集合。 返回森林中的每棵树。你可以按任意顺序组织答案。 示例 1 输入root [1,2,3,4,5,6,7], to_delete [3,5] 输出[[1,2,null,4],[6],[7]]示例 2 输入root [1,2,4,null,3], to_delete [3] 输出[[1,2,4]]提示 树中的节点数最大为 1000。每个节点都有一个介于 1 到 1000 之间的值且各不相同。to_delete.length 1000to_delete 包含一些从 1 到 1000、各不相同的值。 方法深度优先搜索 思路 题目给定一棵树 root树的每个节点都有一个各不相同的值。并且给定一个数组 to_delete包含需要删除的节点值。返回删除所有的 to_delete 中的节点后剩余的树的集合。 可以利用深度优先搜索来遍历每一个节点定义函数 dfs输入是参数是某个节点 node 和这个节点是否为潜在的新的根节点 is_root。函数中首先判断这个节点是否要被删除如果是那么它的两个子节点如果有的话便成为了潜在的根节点。如果这个节点的值不在 to_delete 中并且 is_root 为 true那么这个节点便成为了一个新的根节点需要把它放入结果数组中。同时也要对它的两个子节点进行同样的操作。dfs 的返回值为更新后的 node。 对根节点调用一次 dfs返回新的根节点数组即可。 代码 class Solution { public:vectorTreeNode* delNodes(TreeNode* root, vectorint to_delete) {unordered_setint to_delete_set(to_delete.begin(), to_delete.end());vectorTreeNode * roots;functionTreeNode *(TreeNode *, bool) dfs [](TreeNode* node, bool is_root) - TreeNode * {if (node nullptr) {return nullptr;}bool deleted to_delete_set.count(node-val) ? true : false;node-left dfs(node-left, deleted);node-right dfs(node-right, deleted);if (deleted) {return nullptr;} else {if (is_root) {roots.emplace_back(node);}return node;}};dfs(root, true);return roots;} };执行用时16ms, 在所有 C 提交中击败了92.74%的用户 内存消耗24.6 MB, 在所有 C 提交中击败了77.82%的用户 复杂度分析 时间复杂度O(n)其中 n 是树的节点数。 空间复杂度O(n)其中 n 是树的节点数。 authorLeetCode-Solution
http://www.yingshimen.cn/news/90616/

相关文章:

  • 土地流转网站开发京东网站建设的策划书
  • 官方网站minecraft如何做网站在售产品分析
  • 徐家汇网站建设页面设计升级访问
  • 北京做网站ezhixi河北高端网站建设
  • 建站推广网站排名常州好搜网络科技有限公司
  • 网站开发项目经理工资百度快照排名
  • 外贸官网建站国家企业信用信息公示系统查询
  • 石家庄制作网站推广网站设计模板含数据库
  • 做视频网站自适应网站wordpress
  • 做淘客网站简单吗淄博网站建设 熊掌号
  • 花瓣官网设计网站给我高清电影
  • 用vs怎么做网站的导航广州市专业网站设计
  • 电子商务网站建设推广分析济南地区做企业网站的公司
  • jq动画效果网站全局代理ip
  • 网站建设及运行情况介绍在线设计平台市场分析
  • 衡阳做网站怎么在微信上卖东西
  • 电子邮箱网站建设大型门户网站建设推广
  • 一般卖机械行业的做哪些网站阿里云虚拟主机怎么建设网站
  • 图片点击切换网站模板成都网站品牌设计案例
  • 怎么做企业功能网站做外贸找客户最好用的网站
  • 网站代理做反向互联网广告推广是什么
  • 做经营行网站需要什么手续那个网站可以找人做设计师
  • 双语言网站模版更新wordpress咋办
  • 郑州企业的网站建设山东电力建设网站
  • 免费微信网站怎么做浅谈企业网站建设的目标
  • python 微信网站开发怎么做网站背景图
  • unity可以做网站吗成都门户网站有哪些
  • 企业网站的基本功能有哪些wordpress是php模板吗
  • 网站建设全部流程包括备案浙江城乡与住房建设部网站
  • 网站备案会过期吗学做网站去哪学