力扣:94.二叉树的中序遍历

  1. 仅练习迭代写法
  2. 时间复杂度是 O(n)O(n)O(n),空间复杂度是 O(n)O(n)O(n)
  3. 是辅助栈来解决这个问题
  4. 栈用 push
  5. vectorpush_back
  6. 不要访问空指针 nullptr,防止越界
cpp 复制代码
class Solution {
public:
    vector<int> inorderTraversal(TreeNode* root) {
        vector<int> res;
        TreeNode *cur = root;
        stack<TreeNode*> stk;
        while ( !stk.empty() || cur ) {
            while ( cur ) {
                stk.push( cur );
                cur = cur->left;
            }
            cur = stk.top();
            stk.pop();
            res.push_back( cur->val );
            cur = cur->right;
        }
        return res;
    }
};
相关推荐
有点。5 小时前
C++03阶段练习(练习题)
数据结构·算法·图论
周末也要写八哥6 小时前
经典算法实例:游戏中弱角色的数量(二)
算法
是Yu欸6 小时前
鸿蒙PC移植:2048 从网页小游戏到 AI 桌面应用
大数据·人工智能·算法·数据挖掘·openharmony·codex
鹿角片ljp7 小时前
KV Cache 解析
java·算法
liliangcsdn7 小时前
IVOL与偏度因子的对比测量分析
算法
threerocks8 小时前
Jev 入门第一课
算法
西柚研究生1234569 小时前
论文分析17:YOLOv11_UAVNet:无人机航拍图像专用目标检测算法
人工智能·python·深度学习·算法·目标检测
hetao173383710 小时前
2026-09-17 hetao1733837 的刷题记录
c++·算法
午彦琳11 小时前
2026.9.17
数据结构·算法·leetcode
木井巳11 小时前
【记忆化搜索】不同路径
java·算法·leetcode·深度优先·剪枝·推荐算法