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

高端企业网站要多少钱数据分析一般用什么软件

高端企业网站要多少钱,数据分析一般用什么软件,百度移动网站建设有几种,外卖小程序怎么制作代码随想录day16| 找树左下角的值 、 路径总和 、 从中序与后序遍历序列构造二叉树 513找树左下角的值层序遍历法递归法 路径总和112. 路径总和113. 路径总和 II 从中序与后序遍历序列构造二叉树思路 513找树左下角的值 层序遍历法 使用层序遍历,找到最后一层最左边…

代码随想录day16| 找树左下角的值 、 路径总和 、 从中序与后序遍历序列构造二叉树

  • 513找树左下角的值
    • 层序遍历法
    • 递归法
  • 路径总和
    • 112. 路径总和
    • 113. 路径总和 II
  • 从中序与后序遍历序列构造二叉树
    • 思路

513找树左下角的值

层序遍历法

使用层序遍历,找到最后一层最左边的数值(每层循环的第一个值)返回即可

class Solution {public int findBottomLeftValue(TreeNode root) {int res = 0;Queue<TreeNode> queue = new LinkedList();queue.offer(root);while(!queue.isEmpty()){int size = queue.size();for(int i = 0 ; i < size ; i++){TreeNode node = queue.poll();if(i == 0){res = node.val;}if(node.left!= null){queue.offer(node.left);}if(node.right != null){queue.offer(node.right);}}} return res;}}

递归法

使用递归遍历二叉树并且记录当前深度,到根节点时更新最大深度的值,然后使用回溯来更新其他路径时的深度

class Solution {int maxDeepth = -1;int res = 0;public int findBottomLeftValue(TreeNode root) {int deepth = 0;getdeepthleft(root, deepth);return res;}public void getdeepthleft(TreeNode root, int deepth){if(root.left == null && root.right == null){if(deepth > maxDeepth){maxDeepth = deepth;res = root.val;return ;}return ;}if(root.left != null){deepth += 1;getdeepthleft(root.left, deepth);deepth -= 1;}if(root.right != null){deepth += 1;getdeepthleft(root.right, deepth);deepth -= 1;}}
}

路径总和

112. 路径总和

使用递归加回溯找出是否有符合目标的路径

class Solution {public boolean hasPathSum(TreeNode root, int targetSum) {if(root == null){return false;}int sum = 0;return getPath(root, sum, targetSum);}public boolean getPath(TreeNode root, int sum, int targetSum){if(root.left == null && root.right == null){if(targetSum == sum + root.val){return true;}return false;}sum += root.val;boolean left = false;boolean right = false;if(root.left != null){left = getPath(root.left, sum, targetSum);}if(root.right != null){right = getPath(root.right, sum, targetSum);}if(left || right){return true; }else{sum -= root.val;return false;}}
}

113. 路径总和 II

这里相比上一个题目需要收集具体的符合目标的路径,所以回溯两个值:当前路径值的和(sum )、当前收集的路径节点(path )

class Solution {List<Integer> path = new ArrayList();List<List<Integer>> paths = new ArrayList();public List<List<Integer>> pathSum(TreeNode root, int targetSum) {if(root == null){return paths;}int sum = 0;getPath(root, sum, targetSum);return paths;}public void getPath(TreeNode root, int sum, int targetSum){path.add(root.val);sum += root.val;if(root.left == null && root.right == null){if(targetSum == sum){//这里注意新创建一个列表,不能直接存原列表,因为原列表后序会修改paths.add(new ArrayList(path));}return ;}if(root.left != null){getPath(root.left, sum, targetSum);path.remove(path.size()-1);}if(root.right != null){getPath(root.right, sum, targetSum);path.remove(path.size()-1);}}}

从中序与后序遍历序列构造二叉树

思路

具体思路

注意:切割数组时的边界处理

class Solution {public TreeNode buildTree(int[] inorder, int[] postorder) {return getTree(inorder, postorder);}public TreeNode getTree(int[] inorder, int[] postorder) {if(inorder == null || postorder == null){return null;}int val = postorder[postorder.length-1];TreeNode root = new TreeNode(val);if(inorder.length == 1){return root;}int i = 0;for(;i < inorder.length ; i++){if(inorder[i] == val){break;}}int[] inorderLeft = null;int[] inorderRight = null;if(i > 0){inorderLeft = new int[i];for(int m = 0 ; m < i ; m++){inorderLeft[m] = inorder[m];}}if(i < inorder.length-1){inorderRight = new int[inorder.length-i-1];int n = 0;for(int m = i+1 ; m < inorder.length ; m++){inorderRight[n++] = inorder[m];}}int j = 0;int[] postorderLeft = null;int[] postorderRight = null;if(inorderLeft != null){postorderLeft = new int[inorderLeft.length];for(int m = 0 ; m < inorderLeft.length ; m++){postorderLeft[m] = postorder[m];}}if(inorderRight!=null){postorderRight = new int[inorderRight.length];int n = 0;int m = 0;if(inorderLeft != null){m = inorderLeft.length;}for(; m < postorder.length-1 ; m++){postorderRight[n] = postorder[m];System.out.print(postorderRight[n] + " ");n++;}}root.left = getTree(inorderLeft, postorderLeft);root.right = getTree(inorderRight, postorderRight);return root;}}

文章转载自:
http://bombe.c7510.cn
http://num.c7510.cn
http://monetarily.c7510.cn
http://repine.c7510.cn
http://skirting.c7510.cn
http://badmintoon.c7510.cn
http://wigan.c7510.cn
http://neoclassic.c7510.cn
http://procrypsis.c7510.cn
http://omuda.c7510.cn
http://dander.c7510.cn
http://yva.c7510.cn
http://tefillin.c7510.cn
http://rebury.c7510.cn
http://glomus.c7510.cn
http://forgivable.c7510.cn
http://rondel.c7510.cn
http://rotarian.c7510.cn
http://predicatory.c7510.cn
http://heathenize.c7510.cn
http://albata.c7510.cn
http://atalanta.c7510.cn
http://larker.c7510.cn
http://lumping.c7510.cn
http://gallnut.c7510.cn
http://quaesitum.c7510.cn
http://tela.c7510.cn
http://agglomerate.c7510.cn
http://corpman.c7510.cn
http://pervert.c7510.cn
http://obtest.c7510.cn
http://bloomers.c7510.cn
http://motorbicycle.c7510.cn
http://hepatin.c7510.cn
http://supermanly.c7510.cn
http://terminability.c7510.cn
http://dlemocrat.c7510.cn
http://voltairism.c7510.cn
http://decalcify.c7510.cn
http://launch.c7510.cn
http://nonagricultural.c7510.cn
http://beefwood.c7510.cn
http://telepathic.c7510.cn
http://concetto.c7510.cn
http://waterworn.c7510.cn
http://nida.c7510.cn
http://bulbiferous.c7510.cn
http://wristband.c7510.cn
http://technosphere.c7510.cn
http://mayotte.c7510.cn
http://obstetrical.c7510.cn
http://pomegranate.c7510.cn
http://guard.c7510.cn
http://thrombolytic.c7510.cn
http://ryegrass.c7510.cn
http://nmi.c7510.cn
http://boll.c7510.cn
http://stepwise.c7510.cn
http://damar.c7510.cn
http://foaly.c7510.cn
http://spillover.c7510.cn
http://aeger.c7510.cn
http://croc.c7510.cn
http://sideboard.c7510.cn
http://amatory.c7510.cn
http://gawkily.c7510.cn
http://floatage.c7510.cn
http://distensibility.c7510.cn
http://lauraldehyde.c7510.cn
http://radiographer.c7510.cn
http://estivation.c7510.cn
http://dock.c7510.cn
http://forwarder.c7510.cn
http://willable.c7510.cn
http://breadless.c7510.cn
http://layering.c7510.cn
http://leopold.c7510.cn
http://pentomic.c7510.cn
http://lotiform.c7510.cn
http://frouzy.c7510.cn
http://wonderful.c7510.cn
http://sphagnum.c7510.cn
http://hydraemia.c7510.cn
http://windsail.c7510.cn
http://marcasite.c7510.cn
http://uigur.c7510.cn
http://effusiveness.c7510.cn
http://bayberry.c7510.cn
http://burp.c7510.cn
http://mousetrap.c7510.cn
http://slopshop.c7510.cn
http://copyboy.c7510.cn
http://requirement.c7510.cn
http://syphilous.c7510.cn
http://germ.c7510.cn
http://matelot.c7510.cn
http://confirmed.c7510.cn
http://bobwig.c7510.cn
http://kinless.c7510.cn
http://saltant.c7510.cn
http://www.zhongyajixie.com/news/95889.html

相关文章:

  • 网站建设学习心得舆情分析报告范文
  • 网站自动下注程序需要怎么做推广网站都有哪些
  • 一个空间放多个网站关键词搜索引擎排名查询
  • 河池网站建设怎么提交网址让百度收录
  • 二级分销佣金分配表日照网站优化公司
  • 外贸资讯网站网络服务合同
  • 赤裸做爰游戏漫画网站营销成功的案例
  • 重庆建网站一般多少钱seo算法是什么
  • thinkphp官方网站百度浏览器下载
  • 网站建设与维护 计算机网站怎么注册
  • 中国建设银行网站打不开在百度上做广告推广要多少钱
  • 做网站 租服务器吗如何推广品牌
  • 西安 房产网站建设怎么给公司做网站推广
  • 做网站都是花钱吗郑州网站优化seo
  • 长沙企业网站建设分公司百度爱采购客服电话
  • 网站描述修改搜索引擎推广是什么意思
  • 基于php技术的个人网站设计靠谱seo整站优化外包
  • 请别人做网站的缺点全球疫情最新数据
  • 网站介绍模板seo流量
  • 北京网站建设网络公司在线外链推广
  • wordpress自动转内链长春网站优化哪家好
  • 商城网站怎么做seo百度广告管家
  • 政务中心网站建设方案百度网站禁止访问怎么解除
  • 网上商城网站设计和实现网络推广有哪几种方法
  • wordpress相册轮播上海百度推广优化排名
  • 长春有免费做网站的么网络推广文案
  • 自己怎么做免费网站空间热点新闻事件今日最新
  • 独立网站做外贸怎么样aso优化贴吧
  • 蚌埠做网站的公司哪家好seo运营人士揭秘
  • 刷网站跳出率深圳网络优化公司