文章目录
- 1.题目
- 2.代码
1.题目
- 题目要求
- 思路
 二叉树的中序遍历顺序为左-根-右
2.代码
class Solution{
public:
  vector<int> result;
  vector<int> inorderTraversal(TreeNode* root)
  {
    transefunction(root);
    return result;
  }
  
  void transefunction(TreeNode* node){
    if (!node)  return;
    transefunction(node->left);
    result.push_back(node->val);
    transefunction(node->right);
  }
};
class Solution{
public:
  vector<int> inorderTraversal(TreeNode* root)
  {
    vector<int> result;
    stack<TreeNode*> stack_treenode;
    TreeNode* p = root;
    while (!stack_treenode.empty() || p!=NULL)
    {
      while (p)
      {
        stack_treenode.push(p);
        p=p->left;
      }
      else
      {
        TreeNode* top_node=stack_treenode.top();
        stack_treenode.pop();
        result.push_back(top_node->val);
        p=p->right;
      }
    }
    
    return result;
  }
};                










