C++ LeeCode 二叉树的中序遍历

Posted 梦之海岛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ LeeCode 二叉树的中序遍历相关的知识,希望对你有一定的参考价值。

文章目录

一、题目





二、代码

/**
 * 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:
    void Middle(TreeNode* root,vector<int> &num)//中序遍历,左-根-右
        if(!root)//当前节点为空时
            return;
        
        Middle(root->left,num);//左
        num.push_back(root->val);//根
        Middle(root->right,num);//右
    
    vector<int> inorderTraversal(TreeNode* root) //因为没有传入vector容器参数,所以需要使用一个新的函数遍历二叉树将结果存入vector并返回
        vector<int> num;//存储遍历结果
        Middle(root,num);//递归实现遍历二叉树
        return num;
    
;

以上是关于C++ LeeCode 二叉树的中序遍历的主要内容,如果未能解决你的问题,请参考以下文章

精选力扣500题 第35题 LeetCode 94. 二叉树的中序遍历c++ / java 详细题解

二叉树的中序遍历

数据结构树相关代码(数据结构笔试复测Leecode牛客)

为啥树的后根遍历对应二叉树的中序遍历

二叉树的中序遍历

LeetCode94. 二叉树的中序遍历