第七天leetcode刷题

2021-07-15  本文已影响0人  骨宇

今天开始不跳题了,从头开始吧上面的二叉树再刷个十几二十道的看看,然后今天是第一道最简单的二叉树中序遍历二叉树的中序遍历
关于二叉树的中序遍历我个人习惯的还是递归,因为递归看起来简单容易理解写的还少
但是时间复杂度为O(n),空间复杂度为O(n),看完题解以后我发现迭代和一种Morris 遍历算法,他能够将它能将非递归的中序遍历空间复杂度降为 O(1)。
但是我还没太研究明白emmmm……这个我明下次再说,然后下面贴一下通过代码:

class Solution {
public:
    void inorder(TreeNode* root, vector<int>&res){
        if(!root) return;
        inorder(root->left, res);
        res.push_back(root->val);
        inorder(root->right, res);
    }
    vector<int> inorderTraversal(TreeNode* root) {
        vector<int> res;
        inorder(root,res);
        return res;
    }
};
上一篇 下一篇

猜你喜欢

热点阅读