leecode_二叉树中序遍历

这道题非常简单,

学习数据结构这门课的时候一定要掌握的。

使用递归形式特别简单

 1 class Solution {
 2 public:
 3     vector<int> inorderTraversal(TreeNode* root) {
 4         vector<int> ans;
 5         stack<TreeNode*> s;
 6         TreeNode* p = root;
 7         while(p || !s.empty()) {
 8             while (p) {
 9                 s.push(p);
10                 p = p->left;
11             }
12             p = s.top(); s.pop();
13             res.push_back(p->val);
14             p = p->right;
15         }
16         return ans;
17     }
18 }

 

posted @ 2019-01-07 11:30  明卿册  阅读(161)  评论(0)    收藏  举报