尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

二叉树的中序遍历- 递归和栈 - MKT

二叉树的中序遍历-  递归和栈 - MKT
📅 发布时间:2026/6/20 0:58:23
二叉树的中序遍历- 递归和栈

 

image

 

 

/*** 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:// // 初始化// struck TreeNode{//     int val;//     TreeNode *left;//     TreeNode *right;//     TreeNode(int x): val(x),left(nullptr),right(nullprt){}//     TreeNode(int x,TreeNode *left,TreeNode *right):val(x),left(left),right(right){}// }// // 创建// TreeNode* CreateTree(){//     TreeNode* root =new TreeNode(1);//     root->left = new TreeNode(11);//     root->right = new TreeNode(12);//     root->left->left = new TreeNode(21);//     root->left->right = new TreeNode(21);// }/*A/ \B   C/ \   \D   E   F前序遍历: 根 → 左 → 右
前序遍历结果:A → B → D → E → C → F
应用场景​​:
复制二叉树结构
计算前缀表达式(波兰表示法)
序列化二叉树中历顺序​​:左子树 → 根节点 → 右子树
中序遍历结果:D → B → E → A → C → F
应用场景​​:
二叉搜索树(BST)的有序遍历
中缀表达式求值
按顺序打印树的内容遍历顺序​​:左子树 → 右子树 → 根节点
后序遍历结果:D → E → B → F → C → A
应用场景​​:
删除二叉树(先删除子节点再删除父节点)
计算后缀表达式(逆波兰表示法)
计算目录大小(先计算子目录大小)*/// 方法一:递归void inorder(TreeNode* node_,vector<int> &result){if(node_ == nullptr) return ;inorder(node_->left,result);cout<<"节点 " << node_->val <<endl;result.push_back(node_->val);inorder(node_->right,result);}//方法一:递归 递归的时候隐式地维护了一个栈vector<int> inorderTraversal_1(TreeNode* root) {vector<int> result;inorder(root,result);return result;}vector<int> inorderTraversal(TreeNode* root) {stack<TreeNode*> s;vector<int> result;TreeNode* curr = root;while(curr !=nullptr || !s.empty()){while(curr !=nullptr) {s.push(curr);curr=curr->left;}curr = s.top();s.pop();result.push_back(curr->val);curr=curr->right;}return result;}};

  

相关新闻

  • 友链测试
  • English writing practice in diary.
  • 以此文记我的国漫生活

最新新闻

  • Windows 11拖放功能终极修复指南:如何快速恢复任务栏拖放操作
  • 终极指南:3步让经典DirectDraw游戏在现代Windows上完美运行
  • 零代码AI漫剧工作流:OpenClaw+Seed2.0双轨部署实战指南
  • 模糊照片怎么修复?推荐 6 个实测好用的清晰化工具 - 软件工具教程方法
  • 终极指南:如何无损解密QQ音乐加密音频的完整技术方案
  • 枚举与模式匹配:Python 3.10+新特性

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号