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

毕业设计都是做网站吗网站建设服务

毕业设计都是做网站吗,网站建设服务,额敏网站建设,客服在线服务系统给出一个满足下述规则的二叉树: root.val 0 如果 treeNode.val x 且 treeNode.left ! null,那么 treeNode.left.val 2 * x 1 如果 treeNode.val x 且 treeNode.right ! null,那么 treeNode.right.val 2 * x 2 现在这个二叉树受到「污…

给出一个满足下述规则的二叉树:

root.val == 0
如果 treeNode.val == x 且 treeNode.left != null,那么 treeNode.left.val == 2 * x + 1
如果 treeNode.val == x 且 treeNode.right != null,那么 treeNode.right.val == 2 * x + 2
现在这个二叉树受到「污染」,所有的 treeNode.val 都变成了 -1。

请你先还原二叉树,然后实现 FindElements 类:

FindElements(TreeNode* root) 用受污染的二叉树初始化对象,你需要先把它还原。
bool find(int target) 判断目标值 target 是否存在于还原后的二叉树中并返回结果。

示例 1:
在这里插入图片描述

输入:
[“FindElements”,“find”,“find”]
[[[-1,null,-1]],[1],[2]]
输出:
[null,false,true]
解释:
FindElements findElements = new FindElements([-1,null,-1]);
findElements.find(1); // return False
findElements.find(2); // return True
示例 2:

在这里插入图片描述

输入:
[“FindElements”,“find”,“find”,“find”]
[[[-1,-1,-1,-1,-1]],[1],[3],[5]]
输出:
[null,true,true,false]
解释:
FindElements findElements = new FindElements([-1,-1,-1,-1,-1]);
findElements.find(1); // return True
findElements.find(3); // return True
findElements.find(5); // return False
示例 3:
在这里插入图片描述

输入:
[“FindElements”,“find”,“find”,“find”,“find”]
[[[-1,null,-1,-1,null,-1]],[2],[3],[4],[5]]
输出:
[null,true,false,false,true]
解释:
FindElements findElements = new FindElements([-1,null,-1,-1,null,-1]);
findElements.find(2); // return True
findElements.find(3); // return False
findElements.find(4); // return False
findElements.find(5); // return True

提示:

TreeNode.val == -1
二叉树的高度不超过 20
节点的总数在 [1, 10^4] 之间
调用 find() 的总次数在 [1, 10^4] 之间
0 <= target <= 10^6

解题思路:dfs还原树+还原过程记录出现的value

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class FindElements {private Set<Integer> valSet;public FindElements(TreeNode root) {this.valSet = new HashSet<>();dfs(root, 0);}public boolean find(int target) {return valSet.contains(target);}private void dfs(TreeNode node, int val) {if (node == null) {return;}node.val = val;valSet.add(val);dfs(node.left, val * 2 + 1);dfs(node.right, val * 2 + 2);}
}/*** Your FindElements object will be instantiated and called as such:* FindElements obj = new FindElements(root);* boolean param_1 = obj.find(target);*/
http://www.hengruixuexiao.com/news/28972.html

相关文章:

  • 广西中小企业网站建设焦作整站优化
  • 微信平台的微网站怎么做的免费网页设计制作网站
  • 做网站比较大的公司哈尔滨网站优化
  • 网站制作推广方案app推广方案范例
  • 做影视网站违法百度在线人工客服
  • 专注徐州网站建设站长之家音效
  • p2p提供网站建设违法十大网站平台
  • it黑马官网搜索引擎优化方法
  • 做性事的视频网站苏州seo门户网
  • 广告传媒公司网站比百度好用的搜索软件
  • web网页代码模板搜索引擎优化seo优惠
  • 怎么在网站后台做图片新闻一手项目对接app平台
  • 做网站注意武汉seo搜索引擎
  • 互联网公司排名伊对排第几网站优化课程培训
  • 百度站长网站规则改版关键词如何快速排名
  • 功能类似淘宝的网站建设快速seo软件
  • 做网站需要学什么软件搜狗搜索网页版
  • 贵阳哪家网站建设公司好百度云搜索资源入口
  • 博物馆网站建设的目标百度推广代理开户
  • 养殖舍建设网站推广竞价
  • 企业网站群建设规范seo网络优化专员
  • 用react做的网站上传山东seo推广
  • 网站建设属于什么职能app开发用什么软件
  • 如何提升网站百度权重网站收录
  • 泰州网站模板一般网络推广应该怎么做
  • java快速建站重庆网站建设推广
  • 数字人民币app开发公司成都seo招聘信息
  • 洛阳做网站找哪家好新站点seo联系方式
  • 网站后台模板 免费世界大学排名
  • 使用cdn做网站内容加速青岛谷歌seo