LeetCode.145. Binary Tree Postorder Traversal(Easy)
問題描述:給定一個二叉樹,返回它的後序遍歷。
ans1.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {} * }; */ class Solution { public: vector<int> postorderTraversal(TreeNode* root) { vector<int> result; if (root == nullptr) { return result; } stack<TreeNode*> nodes; nodes.push(root); while (!nodes.empty()) { TreeNode* node = nodes.top(); nodes.pop(); result.insert(result.begin(), node->val); if (node->left) { nodes.push(node->left); } if (node->right) { nodes.push(node->right); } } return result; } }; |
留言
張貼留言