二叉树的前序遍历、中序遍历和后序遍历及其算法
来源:互联网 发布:手机数据清除有影响吗 编辑:程序博客网 时间:2024/05/16 10:05
二叉树的基本的遍历规则有三种:前序遍历,中序遍历和后序遍历。对于每一种遍历,树中每个结点都要经过3次。前序遍历在第一次遇到结点时立即访问,中序遍历第二次遇到结点时访问,后序遍历则到第三次遇到结点时才访问。
以一棵二叉树说明其三种遍历顺序:
前序遍历:- + a * b – c d / e f
中序遍历:a + b * c – d – e / f
后序遍历:a b c d – * + e f / -
中序遍历:a + b * c – d – e / f
后序遍历:a b c d – * + e f / -
前序遍历算法:
template<class T>void BinaryTree<T>::PreOrder(BinTreeNode<T> *subTree, void (*visit)(BinTreeNode<T> *P)) {//递归函数:此算法按照前序遍历以subTree为根的二叉树。if(subTree!=NULL){//递归结束条件visit(subTree);//访问根节点PreOrder(subTree->leftChild,visit);//前序遍历根的左子树PreOrder(subTree->rightChild,visit);//前序遍历根的右子树}};
中序遍历算法:
template<class T>void BinaryTree<T>::InOrder(BinTreeNode<T> *subTree, void(*visit)(BinTreeNode<T> *p)){//递归函数:此算法按照中序次序遍历以subTree为根的子数if(subTree!=NULL) {//如果subTree为NULL,则结束递归InOrder(subTree->leftChild,visit);//中序遍历根的左子树visit(subTree);//访问根节点InOrder(subTree->rightChild,visit);//中序遍历根的右子数}};
后序遍历算法:
template<class T>void BinaryTree<T>::PostOrder(BinTreeNode<T> *subTree,void (*visit)(BinTreeNode<T> *P)) {//递归函数,此算法按照后序遍历以subTree为根的二叉树if(subTree!=NULL) {//递归结束条件PostOrder(subTree->leftChild,visit);//后序遍历根的左子树PostOrder(subTree->rightChild,visit);//后序遍历根的右子树visit(subTree);//访问根节点}};
阅读全文
0 0
- 二叉树的前序遍历、中序遍历和后序遍历及其算法
- 二叉树的前序遍历、中序遍历和后序遍历及其算法
- 二叉树的前序遍历、中序遍历和后序遍历及其算法
- 二叉树的前序遍历、中序遍历和后序遍历及其算法
- 二叉树的前序遍历、中序遍历和后序遍历及其算法
- 二叉树的遍历:前序遍历、中序遍历和后序遍历
- 算法:已经二叉树的前序遍历和中序遍历 写出后序遍历算法
- 二叉树的前序遍历、中序遍历和后序遍历的递归和非递归算法
- java二叉树的增、删、查、前序遍历、中序遍历和后序遍历 算法 源代码
- 二叉树的前序遍历,中序遍历和后序遍历(c#)
- C++数据结构--二叉树的建立,前序遍历,中序遍历和后序遍历
- 二叉树的遍历(前序遍历、中序遍历、后序遍历)
- 二叉树的遍历 前序遍历 中序遍历 后序遍历
- 由二叉树的前序遍历(后序遍历)和中序遍历输出后序遍历(前序遍历)
- 数据结构与算法分析之二叉树的三种遍历方式。--前序遍历,中序遍历和后序遍历
- 已知二叉树的前序/后序遍历和中序遍历,求后序/前序遍历
- 已知二叉树的前序/后序遍历和中序遍历,求后序/前序遍历
- 已知二叉树的前序/后序遍历和中序遍历,求后序/前序遍历
- 在windows7下给vs2015配置dirent.h头文件
- 15.dubbo延迟连接、粘滞连接、令牌验证
- 《MySQL开发技巧》笔记
- Python全栈之路:字典dict常用方法
- Windows下JDK的安装配置
- 二叉树的前序遍历、中序遍历和后序遍历及其算法
- win7系统python安装
- java.io.IOException: Cannot run program "/opt/java/sdk/build-tools/23.0.1/aapt": error=2, No such fi
- Git 最基本的操作命令
- 习题8.2
- Android fragment与Activity交互
- @GeneratorValue与@GenericGenerator注解使用心得
- 字符串全排列
- 脱壳解壳android安全