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

设计制作建筑模型教案网站排名优化多少钱

设计制作建筑模型教案,网站排名优化多少钱,普宁17网站一起做网店,php微信微网站怎么做前言: 本章节更深入学习递归 计算布尔二叉树的值 思路: 1.函数头设计:dfs(root) 2.函数体:需要一个接收left 和 right 的值 并且根据root的值进行比较 3.递归出口:很明显 当为叶子节点的时候…

前言: 本章节更深入学习递归

计算布尔二叉树的值

 

思路: 
1.函数头设计:dfs(root)

2.函数体:需要一个接收left 和 right 的值  并且根据root的值进行比较

3.递归出口:很明显 当为叶子节点的时候 向上返回你叶子节点的值 并且与当前root的值进行比较

    public boolean evaluateTree(TreeNode root) {if(root.left == null && root.right == null) {return root.val > 0;}boolean left = evaluateTree(root.left);boolean right = evaluateTree(root.right);return root.val == 2 ? left || right : left && right;}

求根节点到叶节点数字之和

 

从根节点开始,遍历每个节点,如果遇到叶子节点,则将叶子节点对应的数字加到数字之和。如果当前节点不是叶子节点,则计算其子节点对应的数字,然后对子节点递归遍历。

    int ret = 0;public int sumNumbers(TreeNode root) {return dfs(root, 0);}public int dfs(TreeNode root, int preSum) {preSum = preSum * 10 + root.val;if (root.left == null && root.right == null) {return ret += preSum;}if (root.left != null) {dfs(root.left, preSum);}if (root.right != null) {dfs(root.right, preSum);}return ret;}

 二叉树剪枝

 

思路: 叶子节点为0 直接让它指向空  后序遍历思想

1.遍历完左子树 再遍历右子树

2. 如果遇到叶子节点 则判断当前节点是否为0 

3.如果为0 则直接返回null  否则不需要剪枝 直接返回原来值

    public TreeNode pruneTree(TreeNode root) {if (root == null) {return null;}root.left = pruneTree(root.left);root.right = pruneTree(root.right);if (root.left == null && root.right == null && root.val == 0) {return null;} else {return root;}}

验证二叉搜索树

思路:二叉搜索树 中序遍历是一个有序数组 利用这一特性
先定义一个最小数字prev

当遍历完左子树回退时候

比较是否prev跟当前回退的数字大小 

如果比prev大 则让prev=当前节点的值 

否则 就不是二叉搜索树

    long prev = Long.MIN_VALUE;public boolean isValidBST(TreeNode root) {if (root == null) {return true;}if (!isValidBST(root.left) || root.val <= prev) {return false;}prev = root.val;return isValidBST(root.right);}

 二叉搜索树中第 K 小的元素

 思路: 要求二叉搜索树第k大的数字

定义俩个全局变量 ret记录最终结果 count记录当前k

依次遍历到左子树 当为空的时候 就该回退了

并且 count-1 当count为0的时候 就是目标值了

 int ret;int count ;public int kthSmallest(TreeNode root, int k) {count = k;dfs(root);return ret;}public void dfs(TreeNode root) {if(root == null) {return ;}dfs(root.left);count--;if(count == 0) {ret = root.val;return ;}dfs(root.right);}

 

http://www.yidumall.com/news/34184.html

相关文章:

  • 石家庄网站建设系统手机营销软件
  • 汽车行业市场分析那个网站做的好端口扫描站长工具
  • 什么网站能接工地做广州google推广
  • 京东商城网站风格利于seo的建站系统有哪些
  • 英德市住房城乡建设网站小广告公司如何起步
  • wordpress设置文件大小上海网站快速优化排名
  • 游戏网站模板html杭州最好的seo公司
  • js音乐网站模板全能搜
  • 网站设计与系统的区别高端企业建站公司
  • 论文收录网站排名海外发布新闻
  • wordpress cufonseo社区
  • 网站开发月薪网络营销推广方案有哪些
  • 长春网站排名搜狗收录入口
  • 网站开发项目章程示例抖音关键词排名查询
  • 做美食的网站有那一些手游cpa推广平台
  • 网站直播用php怎么做网站建设的基本
  • 乡村旅行网站开发的毕业论文100大看免费行情的软件
  • 51做网站信息流广告素材网站
  • wordpress添加新的小工具栏最新seo视频教程
  • 寿光建设银行网站seo快速排名利器
  • 西安做网站电话平台外宣推广技巧
  • 花生壳内网穿透网站如何做seo优化专业seo推广
  • 营销策划36计网站优化团队
  • 购物网站如何建设网络整合营销
  • 刷单网站建设经典软文推广案例
  • seo网站建设步骤西地那非片的正确服用方法
  • 国外flash动画网站聚合搜索引擎
  • 怎么搞到网站如何进行网站的宣传和推广
  • 空间设计装修公司成都百度seo优化公司
  • 福建微网站建设价格指数基金什么意思