当前位置: 首页 > news >正文

LeeCode 94. 二叉树的中序遍历

给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。

示例 2:

输入:root = []
输出:[]

示例 3:

输入:root = [1]
输出:[1]

提示:

  • 树中节点数目在范围 [0, 100] 内
  • -100 <= Node.val <= 100

进阶: 递归算法很简单,你可以通过迭代算法完成吗?

答案&测试代码:

void testLeeCode94() { // 94.二叉树的中序遍历。 中序遍历:按照访问左子树——根节点——右子树的方式遍历这棵树/*** 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:vector<int> inorderTraversal(TreeNode* root) {vector<int> vec;if (root) {vector<int> left = inorderTraversal(root->left);vec.insert(vec.end(), left.begin(), left.end()); // 全部加进去vec.push_back(root->val);vector<int> right = inorderTraversal(root->right);vec.insert(vec.end(), right.begin(), right.end());}return vec;}};// 测试示例1TreeNode node1(1), node2(2), node3(3);node1.right = &node2;node2.left = &node3;Solution solution;vector<int> vec = solution.inorderTraversal(&node1);for (auto val : vec) {cout << val << endl;}
}

打印:

ok, 提交到LeeCode:

ok

相关文章:

  • 74道Node.js高频题整理(附答案背诵版)
  • 简乐 1.4.0 | 非常简洁 无损下载 畅听全网
  • 头歌之动手学人工智能-Pytorch 之autograd
  • 王树森推荐系统公开课 排序05:排序模型的特征
  • 【NLP】将 LangChain 与模型上下文协议 (MCP) 结合使用
  • 华为OD机试真题——模拟工作队列(2025A卷:200分)Java/python/JavaScript/C/C++/GO最佳实现
  • bat 批处理通过拖拽,来获取拖入文件的信息
  • Linux之高效文本编辑利器 —— vim
  • 【动态规划】子数组系列(二)
  • CSP 2024 提高级第一轮(CSP-S 2024)阅读程序第一题解析
  • Typora中文直装版
  • 2025.5.28总结
  • 2. 数据结构基本概念 (2)
  • Uniapp+UView+Uni-star打包小程序极简方案
  • 设计模式-装饰模式
  • Day05
  • 深度解析 Dockerfile 配置:构建高效轻量的FastAPI 应用镜像
  • Docker Desktop无法在windows低版本进行安装
  • JS逆向 QQ音乐sign签名|webpack实战 (上)
  • RocksDB
  • 太原网站建设哪家便宜/百度识图找原图
  • 特殊信息收费的网站有哪些/百度seo优化策略
  • 网站建设 方案 评价表/网络推广平台网站推广
  • 怎么可以找到做公益的网站/宁波seo快速优化课程
  • 正规招聘网站有哪些/网页平台做个业务推广
  • 品牌网站建设多少钱/宁波网站推广公司有哪些