144. Binary Tree Preorder Traversal
2016-02-25 10:27
309 查看
iven a binary tree, return the preorder traversal of its nodes' values.
For example:
Given binary tree
return
solution:
运行速度:快
For example:
Given binary tree
{1,#,2,3},
1 \ 2 / 3
return
[1,2,3].
solution:
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: vector<int> preorderTraversal(TreeNode* root) { if(!root) return {}; vector<int> res; stack<TreeNode*> stk; stk.push(root); while(!stk.empty()){ TreeNode *tmp = stk.top(); res.push_back(tmp->val); stk.pop(); if(tmp->right) stk.push(tmp->right); if(tmp->left) stk.push(tmp->left); } return res; } };思路:用栈的地方基本可以用递归, 主要考虑的是循环的终止时间
运行速度:快
相关文章推荐
- 【.Net码农】网上常用免费WebServices集合
- JAVA实操:[1]数组习题
- javascript原生dom操作方法
- 【C++】二维数组的初始化
- 解决Apple World Wide Developer Relations Certificate Authority证书过期
- Struts2 自定义下拉框Tag标签
- 数据库索引浅析(一)
- makefile的语法及写法
- iOS 支付宝好友分享
- Java基础:Day02笔记内容 (常量、注释、变量)
- 谈谈iOS中的命名规范
- 《为grub引导菜单加密码保护grub不被随意修改》
- java中常量池的理解
- Yii 2.0安装
- 电脑网线/水晶头的连接方法(A类,B类)
- 指针作为函数参数
- 域名
- 2016年1月全球搜索引擎份额:百度被蚕食 跌至8.3%
- jquery插件jquery.LightBox.js实现点击放大图片并左右点击切换效果(附demo源码下载)
- 对象序列化分析(一)