leetcode:Binary Tree Postorder Traversal
来源:互联网 发布:知乎帐号异常 编辑:程序博客网 时间:2024/06/07 11:25
Given a binary tree, return the postorder traversal of its nodes' values.
For example:
Given binary tree {1,#,2,3}
,
1 \ 2 / 3
return [3,2,1]
.
Note: Recursive solution is trivial, could you do it iteratively?
Subscribe to see which companies asked this question
/** * 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 { private: void pushNodeToStack(TreeNode* root, stack<TreeNode*> &auxStack) { TreeNode* curNode = root; while (curNode->left != NULL || curNode->right != NULL) { if (curNode->right) auxStack.push(curNode->right); if (curNode->left) auxStack.push(curNode->left); curNode = auxStack.top(); } return; } public: vector<int> postorderTraversal(TreeNode* root) { vector<int> retVtr; if (root == NULL) return retVtr; stack<TreeNode *> auxStack; auxStack.push(root); pushNodeToStack(root, auxStack); while (auxStack.size() > 0) { TreeNode *preNode = NULL; while (auxStack.size() > 0 && (preNode == auxStack.top()->left || preNode == auxStack.top()->right)) { TreeNode *curNode = auxStack.top(); preNode = curNode; auxStack.pop(); retVtr.push_back(curNode->val); } if (auxStack.size() > 0) pushNodeToStack(auxStack.top(), auxStack); } return retVtr; }};
0 0
- LeetCode Binary Tree Postorder Traversal
- LeetCode:Binary Tree Postorder Traversal
- Leetcode: Binary Tree Postorder Traversal
- Leetcode: Binary Tree Postorder Traversal
- LeetCode:Binary Tree Postorder Traversal
- Leetcode Binary Tree Postorder Traversal
- [LeetCode]Binary Tree Postorder Traversal
- [LeetCode] Binary Tree Postorder Traversal
- leetcode Binary Tree Postorder Traversal
- 【LeetCode】Binary Tree Postorder Traversal
- LeetCode | Binary Tree Postorder Traversal
- Leetcode: Binary Tree Postorder Traversal
- Binary Tree Postorder Traversal - LeetCode
- LeetCode - Binary Tree Postorder Traversal
- [LeetCode]Binary Tree Postorder Traversal
- Binary Tree Postorder Traversal -- LeetCode
- [LeetCode]Binary Tree Postorder Traversal
- 【LeetCode】Binary Tree Postorder Traversal
- 第一个单片机程序
- N皇后问题
- leetcode之atoi() in java
- react native 样式初学~(一)
- HLS视频直播
- leetcode:Binary Tree Postorder Traversal
- ssh框架结构分析
- AdaBoost从原理到实现
- NSCalendar(loading...)
- String、StringBuffer与StringBuilder之间区别
- 字符串,字符数组,字符指针的区别与联系
- SQL Server 常用 几个设置(set)选项 [经典实用]
- 蓝桥杯历届-奇怪的比赛
- 数据结构----单链表分析及实现