C++数据结构与算法之二叉树中序遍历
二叉树中序遍历
- C++二叉树中序遍历基本思想
- C++二叉树中序遍历代码
C++二叉树中序遍历基本思想
申请一个栈stk,再申请一个变量cur,初始值让它等于头节点
先把cur压入栈中对cur节点的整颗子树来说,依次把左边界压入栈中,不断重复直到cur为空
从stk弹出一个节点记作node,打印node的值,并让cur=node.right。重复第二个步骤,当stk为空并且cur为空时,结束循环。
C++二叉树中序遍历代码
//递归写法
void inorderSortCure(TreeNode* root)
{if(root!=NULL){inorderSortCure(root->left);cout<<root->val<<" ";inorderSortCure(root->right);}
}
//非递归写法
void inorderSort(TreeNode* root)
{stack<TreeNode*> stk;TreeNode* cur = root;while(!stk.empty()||cur){while(cur){stk.push(cur);cur=cur->left;}TreeNode* node = stk.top();stk.pop();cout<<node->val<<" ";cur= node->right;}
}
C++数据结构与算法之二叉树中序遍历相关推荐
- 数据结构与算法练习-二叉树中序遍历
python数据结构与算法练习-二叉树中序遍历 二叉树中序遍历 思路 python实现 二叉树中序遍历 链接: link. 给定一个二叉树的根节点 root ,返回它的 中序 遍历. 样例 输入:ro ...
- leetcode算法题--二叉树中序遍历迭代法
原题链接:https://leetcode-cn.com/problems/binary-tree-inorder-traversal/ 二叉树中序遍历迭代法,栈实现 vector<int> ...
- 【C语言】二叉树中序遍历(递归和非递归)算法
二叉树中序遍历的实现思想是: 访问当前节点的左子树: 访问根节点: 访问当前节点的右子树: 图 1 二叉树 以图 1 为例,采用中序遍历的思想遍历该二叉树的过程为: 访问该二叉树的根节点,找到 1: ...
- 数据结构二叉树中序遍历递归和非递归算法
2022.11.19 二叉树中序遍历递归和非递归算法 任务描述 相关知识 编程要求 测试说明 C/C++代码 任务描述 本关任务:给定一棵二叉树,使用递归和非递归的方法实现二叉树的中序遍历结果. 相关 ...
- 二叉树中序遍历Stack实现
之前也知道递归的实质就是Stack,但一直也没怎么思考.今天看到一个二叉树中序遍历的算法题,想着可以自己用栈实现一下. 首先中序遍历二叉树的访问顺序是左子树-根节点-右子树.既然是树的遍历,我们需要定 ...
- sdut 2137 数据结构实验之求二叉树后序遍历和层次遍历
数据结构实验之求二叉树后序遍历和层次遍历 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Discuss Problem Descr ...
- 数据结构实验之求二叉树后序遍历和层次遍历
数据结构实验之求二叉树后序遍历和层次遍历 Description 已知一棵二叉树的前序遍历和中序遍历,求二叉树的后序遍历和层序遍历. Input 输入数据有多组,第一行是一个整数t (t<100 ...
- C++ morris inorder二叉树中序遍历(附完整源码)
C++ morris inorder二叉树中序遍历 morris inorder二叉树中序遍历算法的完整源码(定义,实现,main函数测试) morris inorder二叉树中序遍历算法的完整源码( ...
- 二叉树中序遍历的非递归算法
根据二叉树的先序遍历结果创建一棵二叉树,即先创建根结点,然后再创建左子树,最后创建右子树,对于左右子树的创建也遵循根左右的原则,所以对于左右子树的创建可以递归调用本函数,此问题是典型的需要用递归算法求 ...
最新文章
- php 通过exec 创建git分支失败
- ​iOS的界面触摸事件处理机制,然后用一个实例来说明下应用场景.
- Hibernate List集合映射
- Worksheet.get_Range Method
- JVM学习笔记(三)------内存管理和垃圾回收
- 开发Android应用 提升性能的小技巧
- Dubbo源码分析系列-深入Dubbo SPI机制
- 正则表达式RegExp对象
- Swift 势必取代 Python?
- 为啥连接mysql失败_为什么连接数据库后插入老是失败?
- SQL中创建外键约束
- 用户调用机房收费下机中用到的策略与职责链解析
- nand flash地址机制
- 解决服务器上传的tar格式的中不可以解压tar格式的压缩包 zip解压中文会在文件中显示乱码
- Socket通讯连接常见错误代码
- 【Unity】优化工具Profiler
- 俞敏洪致青春三“想”:理想、梦想和思想(转载)
- Project 2016中如何管理工时?
- 那些外贸老鸟们都在认真使用的8个实用小工具
- SSL双向验证--keytool实现自签名证书