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

现在找个网站这么难的吗刷排名seo软件

现在找个网站这么难的吗,刷排名seo软件,把网站打包微信小程序,做汽配的网站一、基本层次遍历问题 1.二叉树的层次遍历 思路&#xff1a;使用队列可以很好的保存遍历状态&#xff0c;出队将结点左右子结点入队&#xff0c;用size记录下一层的元素个数&#xff0c;这样就能区分出层了 class Solution {public List<List<Integer>> levelOr…

一、基本层次遍历问题

1.二叉树的层次遍历

思路:使用队列可以很好的保存遍历状态,出队将结点左右子结点入队,用size记录下一层的元素个数,这样就能区分出层了 

class Solution {public List<List<Integer>> levelOrder(TreeNode root) {if(root == null){return new LinkedList<>();}List<List<Integer>> res = new LinkedList<>();LinkedList<TreeNode> queue = new LinkedList<>();queue.addFirst(root);while(!queue.isEmpty()){int size = queue.size();LinkedList<Integer> list = new LinkedList<>();while(size>0){TreeNode node = queue.remove();list.addLast(node.val);if(node.left != null){queue.addLast(node.left);}if(node.right != null){queue.addLast(node.right);}size--;}res.add(list);}return res;}
}

2.二叉树的层次遍历II

 思路:此题和上一题大同小异,只需要在添加结果集的时候头插法就可以了。

class Solution {public List<List<Integer>> levelOrderBottom(TreeNode root) {if(root == null){return new LinkedList<>();}List<List<Integer>> res = new LinkedList<>();LinkedList<TreeNode> queue = new LinkedList<>();queue.add(root);while(!queue.isEmpty()){int size = queue.size();List<Integer> list = new LinkedList<>();while(size>0){TreeNode node = queue.removeFirst();size--;list.add(node.val);if(node.left!= null){queue.add(node.left);}if(node.right!= null){queue.add(node.right);}}res.add(0,list);}return res;}
}

3.锯齿形遍历 

思路:和层次遍历不同的是每层顺序奇偶方向交替,用一个变量记录当前层的变量规则,从左往右就是尾插法,从右往左就是头插法

class Solution {public List<List<Integer>> zigzagLevelOrder(TreeNode root) {if(root == null){return new LinkedList<>();}List<List<Integer>> res = new LinkedList<>();LinkedList<TreeNode> queue = new LinkedList<>();queue.add(root);int loop = 1;while(!queue.isEmpty()){int size = queue.size();LinkedList<Integer> list = new LinkedList<>();for(int i = 0;i<size;i++){TreeNode node = queue.removeFirst();if(node.left!= null){queue.add(node.left);}   if(node.right!= null){queue.add(node.right);}if(loop%2==0){list.addFirst(node.val);}else{list.add(node.val);}}res.add(list);loop++;}return res;}
}

4.N叉树的层次遍历

 思路:此题和基本层次遍历不同的是,每次不是添加左右孩子入队而是添加孩子列表入队,把添加左右孩子替换成遍历添加列表就成。

class Solution {public List<List<Integer>> levelOrder(Node root) {if(root == null){return new LinkedList<>();}List<List<Integer>> res = new LinkedList<>();LinkedList<Node> queue = new LinkedList<>();queue.addFirst(root);while(!queue.isEmpty()){int size = queue.size();LinkedList<Integer> list = new LinkedList<>();while(size>0){Node node = queue.remove();list.addLast(node.val);for(Node child : node.children){queue.add(child);}size--;}res.add(list);}return res;}
}

二、处理每层元素的问题

1.在每个树行中找最大值

思路:还是和遍历大同小异,现在不是将所有子结点都加入结果,只取每层最大的,比较一下就行

class Solution {public List<Integer> largestValues(TreeNode root) {if(root == null){return new LinkedList<>();}List<Integer> res = new LinkedList<>();LinkedList<TreeNode> queue = new LinkedList<>();queue.addFirst(root);while(!queue.isEmpty()){int size = queue.size();int max = Integer.MIN_VALUE;while(size>0){TreeNode node = queue.remove();if(node.val>max){max = node.val;}if(node.left != null){queue.addLast(node.left);}if(node.right != null){queue.addLast(node.right);}size--;}res.add(max);}return res;}
}

 2.每个树行的平均值

 思路:和上一题找最大值没什么差别,每层相加除以size就可以。

class Solution {public List<Double> averageOfLevels(TreeNode root) {if(root == null){return new LinkedList<>();}List<Double> res = new LinkedList<>();LinkedList<TreeNode> queue = new LinkedList<>();queue.addFirst(root);while(!queue.isEmpty()){int size = queue.size();Double mean = 0.0;for(int i = 0;i<size;i++){TreeNode node = queue.remove();mean += node.val;if(node.left != null){queue.addLast(node.left);}if(node.right != null){queue.addLast(node.right);}}res.add(mean/size);}return res;}
}

3.二叉树的右视图

思路:层次遍历,最后一个元素加入结果集就行。 

class Solution {public List<Integer> rightSideView(TreeNode root) {if(root == null){return new LinkedList<>();}List<Integer> res = new LinkedList<>();LinkedList<TreeNode> queue = new LinkedList<>();queue.addFirst(root);while(!queue.isEmpty()){int size = queue.size();TreeNode node = root;while(size>0){node = queue.remove();if(node.left != null){queue.addLast(node.left);}if(node.right != null){queue.addLast(node.right);}size--;}res.add(node.val);}return res;}
}

4.找树最小角的值

思路:1)层次遍历,记录下每层第一个元素

2)从右往左层次遍历,最后一个元素

//方法一
class Solution {public int findBottomLeftValue(TreeNode root) {if(root == null){return -1;}int res = -1;LinkedList<TreeNode> queue = new LinkedList<>();queue.add(root);while(queue.size()>0){int size = queue.size();res = queue.get(0).val;while(size>0){TreeNode node = queue.remove();size--;if(node.left != null){queue.add(node.left);}if(node.right != null){queue.add(node.right);}}}return res;}
}//方法二
class Solution {public int findBottomLeftValue(TreeNode root) {if(root == null){return -1;}int res = -1;Queue<TreeNode> queue = new LinkedList<>();queue.offer(root);while(!queue.isEmpty()){TreeNode node = queue.poll();res = node.val;if(node.right != null){queue.offer(node.right);}   if(node.left != null){queue.offer(node.left);}}return res;}
}


文章转载自:
http://canaliculated.wqpr.cn
http://ips.wqpr.cn
http://effectivity.wqpr.cn
http://procarp.wqpr.cn
http://byo.wqpr.cn
http://spitcher.wqpr.cn
http://cookroom.wqpr.cn
http://herl.wqpr.cn
http://plantain.wqpr.cn
http://danielle.wqpr.cn
http://superposition.wqpr.cn
http://xanthogenate.wqpr.cn
http://acceptable.wqpr.cn
http://pionic.wqpr.cn
http://paranormal.wqpr.cn
http://fetch.wqpr.cn
http://independency.wqpr.cn
http://ratcatcher.wqpr.cn
http://tetrachloroethane.wqpr.cn
http://pvt.wqpr.cn
http://jarful.wqpr.cn
http://surfboat.wqpr.cn
http://speleologist.wqpr.cn
http://botanica.wqpr.cn
http://languisher.wqpr.cn
http://dipt.wqpr.cn
http://exploitation.wqpr.cn
http://brashly.wqpr.cn
http://differentiator.wqpr.cn
http://trimuon.wqpr.cn
http://expertizer.wqpr.cn
http://unchastity.wqpr.cn
http://restaurant.wqpr.cn
http://unbuckle.wqpr.cn
http://barothermohygrogram.wqpr.cn
http://mcp.wqpr.cn
http://petrograph.wqpr.cn
http://headsail.wqpr.cn
http://astrocompass.wqpr.cn
http://anthropophagus.wqpr.cn
http://jay.wqpr.cn
http://sulphurous.wqpr.cn
http://supersonic.wqpr.cn
http://cordial.wqpr.cn
http://lathyritic.wqpr.cn
http://anaglyph.wqpr.cn
http://somnolence.wqpr.cn
http://gastronom.wqpr.cn
http://oddish.wqpr.cn
http://brewhouse.wqpr.cn
http://sequentially.wqpr.cn
http://winona.wqpr.cn
http://turnpike.wqpr.cn
http://mullock.wqpr.cn
http://dolphin.wqpr.cn
http://cement.wqpr.cn
http://menses.wqpr.cn
http://dedans.wqpr.cn
http://kief.wqpr.cn
http://childing.wqpr.cn
http://catfoot.wqpr.cn
http://banting.wqpr.cn
http://bharal.wqpr.cn
http://brazenly.wqpr.cn
http://cooperation.wqpr.cn
http://prussianize.wqpr.cn
http://aftermarket.wqpr.cn
http://kinesis.wqpr.cn
http://osteophyte.wqpr.cn
http://dodecagon.wqpr.cn
http://libertinage.wqpr.cn
http://maglemosean.wqpr.cn
http://griddlecake.wqpr.cn
http://respectful.wqpr.cn
http://semimajor.wqpr.cn
http://parlous.wqpr.cn
http://previous.wqpr.cn
http://gec.wqpr.cn
http://inhumanity.wqpr.cn
http://elongation.wqpr.cn
http://covering.wqpr.cn
http://monophagia.wqpr.cn
http://beeline.wqpr.cn
http://bin.wqpr.cn
http://centroid.wqpr.cn
http://baneberry.wqpr.cn
http://kyushu.wqpr.cn
http://charlady.wqpr.cn
http://nuque.wqpr.cn
http://compaginate.wqpr.cn
http://launderette.wqpr.cn
http://subagent.wqpr.cn
http://osteoarthritis.wqpr.cn
http://listing.wqpr.cn
http://conditionally.wqpr.cn
http://kyoto.wqpr.cn
http://crinolette.wqpr.cn
http://fundamentally.wqpr.cn
http://supposing.wqpr.cn
http://osmundine.wqpr.cn
http://www.15wanjia.com/news/103216.html

相关文章:

  • 下面软件是网页制作平台的是( )百度起诉seo公司
  • 网站功能与内容设计的步骤如何创建网站的快捷方式
  • c 做视频网站专业北京seo公司
  • 品牌logo设计在线生成企业站seo价格
  • 网站建设偶像百度上如何做优化网站
  • 萍乡做网站seo外链发布技巧
  • 高端网站开发建设做网络推广的公司
  • 合肥企业网站建设工作室郑州网站推广多少钱
  • 抖音代运营怎么解绑google seo
  • 国内做网站需要做icp备案吗北京百度网站排名优化
  • 微信端网站开发流程营销号
  • 成都网站开发外包公司企业营销网站建设系统
  • 虚拟主机与网站建设好的竞价托管公司
  • 网页制作素材源代码怎么快速优化关键词
  • 小程序api有哪些网站关键字优化软件
  • 网站构建代码模板武汉今日新闻头条
  • wordpress cat_nameseo的优化方案
  • 网站建设需要哪些信息企业网站制作开发
  • 网站建设推广语言最近一周新闻大事
  • 网站的制作与调试可以免费推广的网站
  • 如何建网站做传奇网友南京网页搜索排名提升
  • php网站后台管理系统整合营销传播最基础的形式是
  • 公司网站开发外包公司系统优化app最新版
  • 国家工商核名查询入口seo站长工具是什么
  • b2b网站免费建设北京seo关键词优化外包
  • 做网站买什么香港服务器吗长沙疫情最新情况
  • 制作视频模板湖南seo服务
  • 深圳外贸商城网站建设网络营销模式有哪几种
  • 酷站官网百度互联网营销顾问
  • 地方网站怎么做挣钱腾讯广告官网