博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode "Binary Tree Vertical Order"
阅读量:5085 次
发布时间:2019-06-13

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

BFS + HashTable

class Solution {    int maxl, minl;    unordered_map
> hm;public: vector
> verticalOrder(TreeNode* root) { maxl = INT_MIN; minl = INT_MAX; typedef pair
Rec; queue
q; if (root) { q.push(Rec(root, 0)); } while (!q.empty()) { Rec curr = q.front(); q.pop(); int l = curr.second; maxl = max(maxl, l); minl = min(minl, l); TreeNode *tmp = curr.first; hm[l].push_back(tmp->val); if (tmp->left) { q.push(Rec(tmp->left, l - 1)); } if (tmp->right) { q.push(Rec(tmp->right, l + 1)); } } vector
> ret; for (int i = minl; i <= maxl; i++) { if (hm[i].size() == 0) continue; ret.push_back(hm[i]); } return ret; }};

转载于:https://www.cnblogs.com/tonix/p/5047820.html

你可能感兴趣的文章
移动端页面开发适配 rem布局原理
查看>>
Ajax中文乱码问题解决方法(服务器端用servlet)
查看>>
会计电算化常考题目一
查看>>
阿里云服务器CentOS6.9安装Mysql
查看>>
剑指offer系列6:数值的整数次方
查看>>
js 过滤敏感词
查看>>
poj2752 Seek the Name, Seek the Fame
查看>>
软件开发和软件测试,我该如何选择?(蜗牛学院)
查看>>
基本封装方法
查看>>
bcb ole拖拽功能的实现
查看>>
生活大爆炸之何为光速
查看>>
bzoj 2456: mode【瞎搞】
查看>>
[Typescript] Specify Exact Values with TypeScript’s Literal Types
查看>>
[GraphQL] Reuse Query Fields with GraphQL Fragments
查看>>
Illustrated C#学习笔记(一)
查看>>
理解oracle中连接和会话
查看>>
两种最常用的Sticky footer布局方式
查看>>
Scrapy实战篇(三)之爬取豆瓣电影短评
查看>>
HDU 5510 Bazinga KMP
查看>>
[13年迁移]Firefox下margin-top问题
查看>>