199. Binary Tree Right Side View
来源:互联网 发布:mysql limit 动态参数 编辑:程序博客网 时间:2024/06/05 14:58
DFS
比较每个节点的深度及用字符串纪录它的位置;
也可以用用层次遍历,并且记下每层的节点;
struct Node{ int val; string rt; Node(int x,string y):val(x),rt(y){}};class Solution {public: void DFS(TreeNode* root,string rt,int depth,vector<Node> &vt) { if(!root) return; if(depth<vt.size()) { if(rt>vt[depth].rt) { vt[depth].rt=rt; vt[depth].val=root->val; } } else { Node node(root->val,rt); vt.push_back(node); } DFS(root->left,rt+"1",depth+1,vt); DFS(root->right,rt+"2",depth+1,vt); } vector<int> rightSideView(TreeNode* root) { vector<int> vec; vector<Node> vt; DFS(root, "", 0, vt); for(int i=0;i<vt.size();i++) vec.push_back(vt[i].val); return vec; } };
BFS
class Solution {public: vector<int> rightSideView(TreeNode* root) { vector<int> res; if(!root) return res; queue<TreeNode*> vec; vec.push(root); while(!vec.empty()) { res.push_back(vec.back()->val); int _size=vec.size(); for(int i=0;i<_size;i++) { TreeNode* node=vec.front(); if(node->left) vec.push(node->left); if(node->right) vec.push(node->right); vec.pop(); } } return res; }};
0 0
- Tree-----199. Binary Tree Right Side View
- [LeetCode]199.Binary Tree Right Side View
- LeetCode 199. Binary Tree Right Side View
- [leetcode] 199.Binary Tree Right Side View
- [leetcode] 199. Binary Tree Right Side View
- [LeetCode]199. Binary Tree Right Side View
- 199. Binary Tree Right Side View LeetCode
- leetcode 199. Binary Tree Right Side View
- [LeetCode]199. Binary Tree Right Side View
- [LeetCode]199. Binary Tree Right Side View
- 199. Binary Tree Right Side View
- [LeetCode] 199. Binary Tree Right Side View
- LeetCode *** 199. Binary Tree Right Side View
- LeetCode 199. Binary Tree Right Side View
- 199. Binary Tree Right Side View
- 199. Binary Tree Right Side View
- 199. Binary Tree Right Side View
- 199. Binary Tree Right Side View
- 【C++】顺序表的实现
- 应聘 + 半个月试用心得(x_nin) (实力不强,大神忽略)
- oracle sql exists 用法
- python 简单的斐波那契数列
- 1.读取图像/视频/视频播放控
- 199. Binary Tree Right Side View
- CodeForces 699B One Bomb
- Android系统五大布局详解Layout
- ArcGIS中的三种查询
- Java并发编程:线程池的使用
- UIAlertController
- 算法-一重循环实现两重循环的功能
- zookeeper集群式搭建
- 关于UPnP Device Architecture 2.0的阅读笔记(九)