LeetCode "Binary Tree Longest Consecutive Sequence"
2015-10-28 11:47
477 查看
A simple application to binary tree traversal.
class Solution { typedef pair<int, unsigned> Rec; // last val - length unsigned ret; void go(TreeNode *p, Rec r) { if(!p) return; Rec nr(p->val, 1); if(r.second && p->val == (r.first + 1)) { nr = Rec(p->val, r.second + 1); } ret = max(ret, nr.second); go(p->left, nr); go(p->right, nr); } public: int longestConsecutive(TreeNode* root) { ret = 0; go(root, Rec(0, 0)); return ret; } };
相关文章推荐
- Unique Paths - LeetCode
- iOS-UIKit(UIDatePicker.h--解读)
- HDU 4449 Building Design 三维凸包+空间坐标变换
- 走进IBM开放云平台——Bluemix ( 上海meetup, 2015.10.31, 新天地 )
- UILabel 没有换行,显示3个点『...』解决方法
- CLI的终极进化体之TUI
- iOS-UIKit(UILabel.h常用技巧1(随字体多行后的高度,渐变字体Label,自适应高度,添加边框))
- UISwitch 圆点按钮
- create sequence
- IOS-21-UI懒加载概念及原理
- iOS中 UIView 的 hitTest 使用
- select, iocp, epoll,kqueue及各种I/O复用机制
- UI 常用方法总结之--- UITableView
- CE3和UE3在多线程渲染方面的简单对比
- SqlCommandBuilder类批量更新excel或者CSV数据的方法
- Uip在STM32平台移植
- NGUI 3.5教程(八)Scroll Bar 滚动条-制作聊天框
- ios GPUImageGaussianBlurFilter 苹果模糊效果
- 如何获取SharePoint 2013 Build Numbers?
- UIscrollView滚动时调用的方法