LeetCode | Binary Tree Preorder Traversal
来源:互联网 发布:淘宝服务中心在哪 编辑:程序博客网 时间:2024/05/15 23:31
题目:
Given a binary tree, return the preorder traversal of its nodes' values.
For example:
Given binary tree {1,#,2,3}
,
1 \ 2 / 3
return [1,2,3]
.
Note: Recursive solution is trivial, could you do it iteratively?
思路:
常规的递归调用PreOrder Traversal代码:
递归版本
/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:vector<int> v; vector<int> preorderTraversal(TreeNode *root) { preorder(root); return v; } void preorder(TreeNode *root) { if(root !=NULL) { v.push_back(root->val); preorder(root->left); preorder(root->right); } }};
/** * Definition for binary tree * 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) { vector<int> result; stack<TreeNode*> node; if(root != NULL){ node.push(root); } while(!node.empty()){ TreeNode* p = node.top(); node.pop(); result.push_back(p->val); if(p->right != NULL){ node.push(p->right); } if(p->left != NULL){ node.push(p->left); } } return result; }};
0 0
- LeetCode Binary Tree Preorder Traversal
- 【LeetCode】Binary Tree Preorder Traversal
- Leetcode: Binary Tree Preorder Traversal
- Leetcode Binary Tree Preorder Traversal
- LeetCode:Binary Tree Preorder Traversal
- Leetcode: Binary Tree Preorder Traversal
- LeetCode:Binary Tree Preorder Traversal
- [LeetCode]Binary Tree Preorder Traversal
- [LeetCode] Binary Tree Preorder Traversal
- LeetCode | Binary Tree Preorder Traversal
- Leetcode: Binary Tree Preorder Traversal
- [LeetCode] Binary Tree Preorder Traversal
- LeetCode - Binary Tree Preorder Traversal
- LeetCode - Binary Tree Preorder Traversal
- 【LeetCode】Binary Tree Preorder Traversal
- [LeetCode]Binary Tree Preorder Traversal
- Binary Tree Preorder Traversal - LeetCode
- [Leetcode] Binary Tree Preorder Traversal
- php的扩展和嵌入--总纲
- P1001 谁拿了最多奖学金
- Ios 领域相关网站大全
- LeetCode - Evaluate Reverse Polish Notation
- Thinking in Java final关键字
- LeetCode | Binary Tree Preorder Traversal
- Ubuntu12.04下Linux内核编译
- 从汽车之家上市谈电商
- 快速排序法(三)
- 一些特有有益处的网站
- elephant-bird的安装和使用
- 多class应用同一个元素时,后声明的class规则将覆盖先声明的
- ios 开发过程中常见问题
- php的扩展和嵌入--php的生命周期与变量详述