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

贵阳房地产网站建设网络营销课程培训课程

贵阳房地产网站建设,网络营销课程培训课程,wordpress打开wordpress,建立主题网站的知识点数据结构——二叉树层序遍历 107. 二叉树的层序遍历 II199. 二叉树的右视图思路: 637. 二叉树的层平均值 107. 二叉树的层序遍历 II 107. 二叉树的层序遍历 II 给你二叉树的根节点 root ,返回其节点值 自底向上的层序遍历 。 (即按从叶子节…

数据结构——二叉树层序遍历

    • 107. 二叉树的层序遍历 II
    • 199. 二叉树的右视图
      • 思路:
    • 637. 二叉树的层平均值

107. 二叉树的层序遍历 II

107. 二叉树的层序遍历 II

给你二叉树的根节点 root ,返回其节点值 自底向上的层序遍历 。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)

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

输入:root = [3,9,20,null,null,15,7]
输出:[[15,7],[9,20],[3]]

自底向上遍历,将原层序遍历的结果反转即可

class Solution {public List<List<Integer>> levelOrderBottom(TreeNode root) {List<List<Integer>> list = new ArrayList<>();Deque<TreeNode> que = new LinkedList<>();if (root == null) {return list;}que.offer(root);while (!que.isEmpty()) {List<Integer> itemList = new ArrayList<Integer>();int len = que.size();while (len > 0) {TreeNode tmpNode = que.poll();itemList.add(tmpNode.val);if (tmpNode.left != null) que.offer(tmpNode.left);if (tmpNode.right != null) que.offer(tmpNode.right);len--;}list.add(itemList);}List<List<Integer>> result = new ArrayList<>();for (int i = list.size() - 1; i >= 0; i-- ) {result.add(list.get(i));}return result;}
}

199. 二叉树的右视图

199. 二叉树的右视图
给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。

示例 1:
在这里插入图片描述
输入: [1,2,3,null,5,null,4]
输出: [1,3,4]

思路:

层序遍历的时候,判断是否遍历到单层的最后面的元素,如果是,就放进result数组中,随后返回result就可以了。

class Solution {public List<Integer> rightSideView(TreeNode root) {List<Integer> list = new ArrayList<>();Deque<TreeNode> que = new LinkedList<>();if (root == null) {return list;}que.offerLast(root);while (!que.isEmpty()) {int levelSize = que.size();for (int i = 0; i < levelSize; i++) {TreeNode poll = que.pollFirst();if (poll.left != null) {que.addLast(poll.left);}if (poll.right != null) {que.addLast(poll.right);}if (i == levelSize - 1) {list.add(poll.val);}}}return list;}
}

637. 二叉树的层平均值

637. 二叉树的层平均值

给定一个非空二叉树, 返回一个由每层节点平均值组成的数组。
在这里插入图片描述
在这里插入图片描述
层序遍历的时候把一层求个总和在取一个均值。

class Solution {public List<Double> averageOfLevels(TreeNode root) {List<Double> list = new ArrayList<>();Deque<TreeNode> que = new LinkedList<>();if (root==null){return list;}que.offerLast(root);while(!que.isEmpty()){TreeNode peek = que.peekFirst();int levelSize = que.size();double levelSum = 0.0;// 统计每一层的和for (int i = 0; i < levelSize; i++) {TreeNode poll = que.pollFirst();levelSum += poll.val;if (poll.left != null) {que.addLast(poll.left);}if (poll.right != null) {que.addLast(poll.right);}}list.add(levelSum / levelSize);//均值放入结果list}return list;}
}
http://www.hrbkazy.com/news/25562.html

相关文章:

  • 做网站代理商好赚吗?添加友情链接的技巧
  • 杭州湾新区开发建设公司网站常用的网络营销方法及效果
  • 购房者网站今日新闻头条官网
  • 门户网站建站方案色盲眼中的世界
  • 网站好的案例数据分析师报考条件
  • 网站设计主题选择企业管理培训班
  • 班级博客网站模板哈尔滨网络优化公司有哪些
  • 利用ionic做的网站软文写作的三个要素
  • 石家庄网站开发公司电话全球搜索引擎入口
  • 网站建设项目wbs分解友情链接怎么做
  • 私募基金网站怎么做seo江北seo
  • 创业网站建设怎么样免费seo关键词优化排名
  • 西安有关做网站的公司有哪些百度sem竞价推广电子书
  • 找公司做网站运营怎么样电子商务主要学什么就业方向
  • 营销型网站建站教程seo服务深圳
  • 可以找人帮忙做设计的网站网络推广哪个好
  • 临海建设规划信息网网站人工智能培训心得
  • 免费做图片链接网站电脑培训班多少费用
  • 罗湖做网站哪家好画质优化app下载
  • 哪个网站做演唱会门票开源cms建站系统
  • 怎么做网站服务百度点击软件还有用吗
  • 免费咨询中心厦门网站优化公司
  • 博罗网站建设黑龙江新闻头条最新消息
  • 深圳企业网站建设设计制作方案今日头条最新消息
  • 爱做网站网址哈尔滨最新
  • 怎么做直播网站太原seo霸屏
  • 网站建设三剑客推广方式有哪些?
  • 沛县网站定制搜索关键词推荐
  • 泉州市住房与城乡建设网站百度付费推广的费用
  • 做网站 报价 需要了解国际新闻最新消息中国