码迷,mamicode.com
首页 > 其他好文 > 详细

[LeetCode]515 Find Largest Value in Each Tree Row(dfs)

时间:2017-03-10 16:32:19      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:max   leetcode   each   for   problems   tor   esc   span   etc   

题目链接:https://leetcode.com/problems/find-largest-value-in-each-tree-row/?tab=Description

题意:找每层的最大值。

直接dfs扔map里

 1 class Solution {
 2 public:
 3     int sz;
 4     map<int, int> ret;
 5     void dfs(TreeNode* p, int d) {
 6         sz = max(sz, d);
 7         if(ret.find(d) == ret.end()) ret[d] = p->val;
 8         else ret[d] = max(ret[d], p->val);
 9         if(p->left) dfs(p->left, d+1);
10         if(p->right) dfs(p->right, d+1);
11     }
12     vector<int> largestValues(TreeNode* root) {
13         ret.clear();
14         sz = -1;
15         if(root == NULL) return vector<int>();
16         dfs(root, 0);
17         vector<int> v;
18         for(int i = 0; i <= sz; i++) v.push_back(ret[i]);
19         return v;
20     }
21 };

 

[LeetCode]515 Find Largest Value in Each Tree Row(dfs)

标签:max   leetcode   each   for   problems   tor   esc   span   etc   

原文地址:http://www.cnblogs.com/kirai/p/6531164.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!