lintcode 二叉树后序遍历

 1 /**
 2  * Definition of TreeNode:
 3  * class TreeNode {
 4  * public:
 5  *     int val;
 6  *     TreeNode *left, *right;
 7  *     TreeNode(int val) {
 8  *         this->val = val;
 9  *         this->left = this->right = NULL;
10  *     }
11  * }
12  */
13 
14 //递归
15 class Solution {
16 public:
17     /*
18      * @param root: A Tree
19      * @return: Postorder in ArrayList which contains node values.
20      */
21      
22      void inorder(TreeNode *root, vector<int> &result) {
23          if (root->left != NULL) {
24              inorder(root->left, result);
25          }
26          if (root->right != NULL) {
27              inorder(root->right, result);
28          }
29          result.push_back(root->val);
30      }
31      
32     vector<int> postorderTraversal(TreeNode * root) {
33         // write your code here
34         vector<int> result;
35         if (root == NULL) {
36             return result;
37         }
38         inorder(root, result);
39         return result;
40     }
41 };
原文地址:https://www.cnblogs.com/gousheng/p/7391294.html