144. Binary Tree Preorder Traversal
2017-05-15 23:21
316 查看
144. Binary Tree Preorder Traversal
问题:先序遍历二叉树
思路:
先根节点,左子树,然后右子树。使用堆栈存储
code:
/** * 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) { vector<int> list; TreeNode* p = root; stack<TreeNode*> st; while (p || !st.empty()) { if (p) { st.push(p); list.push_back(p->val); p = p->left; } else { p = st.top(); st.pop(); p = p->right; } } return list; } };
相关文章推荐
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal 二叉树的前序遍历
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal LeetCode
- 144.Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal (Tree, Stack)
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal
- 144. Binary Tree Preorder Traversal