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

适合新手做的网站电商网站设计推荐亿企邦

适合新手做的网站,电商网站设计推荐亿企邦,购物网站制作免费,太仓企业网站建设公司目录 102.二叉树的层序遍历 题目 代码#xff08;队列实现#xff09; 107.二叉树的层序遍历II 题目 代码 199.二叉树的右视图 题目 代码 637.二叉树的层平均值 题目 代码 102.二叉树的层序遍历 题目 给你二叉树的根节点 root #xff0c;返回其节点值的 层序遍…目录 102.二叉树的层序遍历 题目 代码队列实现 107.二叉树的层序遍历II 题目 代码 199.二叉树的右视图 题目 代码 637.二叉树的层平均值 题目 代码 102.二叉树的层序遍历 题目 给你二叉树的根节点 root 返回其节点值的 层序遍历 。 即逐层地从左到右访问所有节点。 示例 1 输入root [3,9,20,null,null,15,7] 输出[[3],[9,20],[15,7]] 代码队列实现 /*** 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 Solution {public ListListInteger levelOrder(TreeNode root) {//res保存每一层的结果集ListListInteger res new ArrayListListInteger();//如果根节点为空直接返回if(root null){return res;}//que队列用来保存访问过但还没处理的节点QueueTreeNode que new ArrayDeque();que.offer(root); //根节点入队队列有一个节点//当队列非空说明还有节点没处理while(!que.isEmpty()){int len que.size(); //当前队列长度就是这一层的元素个数ListInteger tmpRes new ArrayList(); //用来保存这一层的结果值//逐个处理这一层的每个节点while(len 0){TreeNode tmp que.poll(); //出队tmpRes.add(tmp.val); //加入暂时结果集//左孩子进队if(tmp.left ! null){que.offer(tmp.left);}//右孩子进队if(tmp.right ! null){que.offer(tmp.right);}len--;} res.add(tmpRes); //加入单层结果集}return res;} } 107.二叉树的层序遍历II 题目 给你二叉树的根节点 root 返回其节点值 自底向上的层序遍历 。 即按从叶子节点所在层到根节点所在的层逐层从左向右遍历 示例 1 输入root [3,9,20,null,null,15,7] 输出[[15,7],[9,20],[3]] 代码 /*** 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 Solution {public ListListInteger levelOrderBottom(TreeNode root) {//res保存每一层的结果集ListListInteger res new ArrayListListInteger();//如果根节点为空直接返回if(root null){return res;}//que队列用来保存访问过但还没处理的节点QueueTreeNode que new ArrayDeque();que.offer(root); //根节点入队队列有一个节点//当队列非空说明还有节点没处理while(!que.isEmpty()){int len que.size(); //当前队列长度就是这一层的元素个数ListInteger tmpRes new ArrayList(); //用来保存这一层的结果值//逐个处理这一层的每个节点while(len 0){TreeNode tmp que.poll(); //出队tmpRes.add(tmp.val); //加入暂时结果集//左孩子进队if(tmp.left ! null){que.offer(tmp.left);}//右孩子进队if(tmp.right ! null){que.offer(tmp.right);}len--;} res.add(tmpRes); //加入单层结果集}//把自顶而下的层序遍历逆序ListListInteger lastres new ArrayListListInteger();for(int i res.size()-1; i 0; i--){lastres.add(res.get(i));}return lastres;} } 199.二叉树的右视图 题目 给定一个二叉树的 根节点 root想象自己站在它的右侧按照从顶部到底部的顺序返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,null,5,null,4] 输出: [1,3,4] 代码 /*** 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 Solution {public ListInteger rightSideView(TreeNode root) {//res保存每一层的结果集ListListInteger res new ArrayListListInteger();//保存返回结果ListInteger lastres new ArrayList();//如果根节点为空直接返回if(root null){return lastres;}//que队列用来保存访问过但还没处理的节点QueueTreeNode que new ArrayDeque();que.offer(root); //根节点入队队列有一个节点//当队列非空说明还有节点没处理while(!que.isEmpty()){int len que.size(); //当前队列长度就是这一层的元素个数ListInteger tmpRes new ArrayList(); //用来保存这一层的结果值//逐个处理这一层的每个节点while(len 0){TreeNode tmp que.poll(); //出队tmpRes.add(tmp.val); //加入暂时结果集//左孩子进队if(tmp.left ! null){que.offer(tmp.left);}//右孩子进队if(tmp.right ! null){que.offer(tmp.right);}len--;} res.add(tmpRes); //加入单层结果集}//返回每一次的最右最后元素for(int i0; i res.size(); i){ListInteger tmpRes res.get(i);lastres.add(tmpRes.get(tmpRes.size()-1));}return lastres;} } 637.二叉树的层平均值 题目 给定一个非空二叉树的根节点 root , 以数组的形式返回每一层节点的平均值。与实际答案相差 10-5 以内的答案可以被接受。 示例 1 输入root [3,9,20,null,null,15,7] 输出[3.00000,14.50000,11.00000] 解释第 0 层的平均值为 3,第 1 层的平均值为 14.5,第 2 层的平均值为 11 。 因此返回 [3, 14.5, 11] 代码 /*** 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 Solution {public ListDouble averageOfLevels(TreeNode root) {//res保存层序遍历结果ListListInteger res new ArrayListListInteger();ListDouble lastres new ArrayList();//如果根节点为空直接返回if(root null){return lastres;}//que队列用来保存访问过但还没处理的节点QueueTreeNode que new ArrayDeque();que.offer(root); //根节点入队队列有一个节点//当队列非空说明还有节点没处理while(!que.isEmpty()){int len que.size(); //当前队列长度就是这一层的元素个数ListInteger tmpRes new ArrayList(); //用来保存这一层的结果值//逐个处理这一层的每个节点while(len 0){TreeNode tmp que.poll(); //出队tmpRes.add(tmp.val); //加入暂时结果集//左孩子进队if(tmp.left ! null){que.offer(tmp.left);}//右孩子进队if(tmp.right ! null){que.offer(tmp.right);}len--;} res.add(tmpRes); //加入单层结果集}//计算每一层的平均值for(int i 0; i res.size(); i){ListInteger tmplist res.get(i);double sum 0;for(int j0; j tmplist.size(); j){sum tmplist.get(j);}lastres.add(sum/tmplist.size());}return lastres;} }
http://www.hkea.cn/news/14260722/

相关文章:

  • 雄安优秀网站建设方案定制网站成本多少
  • 佛山做外贸网站流程wordpress域名+文件
  • 做微商进哪个网站安全吗使用session和cookie实现网站自动登录 .net
  • 电子商务网站建设与维护方法亚马逊html编辑器
  • 有哪些网站是织梦做的目前比较火的电商平台有哪些
  • 精选网站建设默认网站 域名 网站绑定
  • 门户网站具有什么特点网站的建设意见
  • 做微网站哪家好北京微信网站建设
  • 做网站用asp div代码专业的企业智能建站比较好
  • 兼职建设网站百竞(湘潭)网站建设
  • 手机网站设计资讯画册模板
  • 东莞网站建设如何做商城网站模板框架
  • 沭阳建设局网站祁东网站设计公司
  • 做网站需要哪些手续建设网站空间多少钱
  • 昆明网站做杭州网站建设优化
  • 网站建设w亿玛酷1流量订制html5高端酒水饮料企业网站模版
  • 网站建设适用税种网页制作教程步骤视频讲解
  • 饰品做商城网站模式抖音seo推荐算法
  • 天津网站建设哪家权威河北建设集团官方网站
  • 网站服务器租用和托管数据分析网官网
  • 深圳网站优化建设局网站建设招标
  • 网站百度突然不收录了重庆市建设工程信息网劳务资质查询
  • 沈阳做网站的用jquery做的网站
  • 在线网站制作系统源码知名网站建设推荐
  • 做2手物品通过网站去卖掉好做吗网站图片修改
  • 星乐seo网站关键词排名优化百度竞价查询
  • 做婚庆网站有哪些深圳西乡
  • word网站流程图怎么做建立公司网站要多少钱
  • 手机免费建站平台下载安全的合肥网站建设
  • 大型网站建设个人网站不备案会怎么样