博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
515. Find Largest Value in Each Tree Row(Tree)
阅读量:4181 次
发布时间:2019-05-26

本文共 1437 字,大约阅读时间需要 4 分钟。

链接:

题目:求二叉树每一层的最大值;

思路:采用层次遍历方式。

代码:

class Solution {public:    vector
largestValues(TreeNode* root) { vector
ret; if(!root) return ret; queue
Q; Q.push(root); int curlow = 1; int nextlow = 0; int maxval = 0; bool newlow = 1; while(!Q.empty()){ TreeNode *t = Q.front(); if(!newlow){ maxval = max(maxval,t->val); } else { maxval = t->val; newlow = 0; } if(t->left) { Q.push(t->left); nextlow++; } if(t->right){ Q.push(t->right); nextlow++; } curlow--; if(curlow==0){ curlow = nextlow; nextlow = 0; ret.push_back(maxval); newlow = 1; } Q.pop(); } return ret; }};

转载地址:http://lirai.baihongyu.com/

你可能感兴趣的文章
让你变成ps高手
查看>>
在可执行jar中动态载入第三方jar(转贴)
查看>>
考虑体积重量的01背包问题—基于遗传算法
查看>>
K-means 聚类算法
查看>>
带约束的K-means聚类算法
查看>>
约束优化方法
查看>>
VRPTW建模与求解—基于粒子群算法
查看>>
数据结构与算法(1):大O表示法
查看>>
Java学习知识树
查看>>
文科生,你为啥学编程?
查看>>
使用Eclipse时出现Unhandled event loop exception错误的有效解决办法
查看>>
JAVA之路:第一章 JAVA入门初体验
查看>>
菜鸟文科生的java之路:运算符
查看>>
菜鸟文科生的java之路:变量和常量
查看>>
菜鸟文科生的java之路:流程控制语句
查看>>
北海糖:Java初阶练习题
查看>>
不知道什么是数组?看这里就好了
查看>>
文科生北海唐的Java之路:方法(慕课)
查看>>
自学Java的轨迹线路
查看>>
如何更好的隐藏你自己,让我们谈谈什么是封装?
查看>>