4-9 二叉树的遍历
来源:互联网 发布:淘宝支付金额排名层级 编辑:程序博客网 时间:2024/05/18 03:51
二叉树的四种遍历
#include <stdio.h>#include <stdlib.h>typedef char ElementType;typedef struct TNode *Position;typedef Position BinTree;struct TNode{ ElementType Data; BinTree Left; BinTree Right;};BinTree CreatBinTree(); /* 实现细节忽略 */void InorderTraversal( BinTree BT );void PreorderTraversal( BinTree BT );void PostorderTraversal( BinTree BT );void LevelorderTraversal( BinTree BT );int main(){ BinTree BT = CreatBinTree(); printf("Inorder:"); InorderTraversal(BT); printf("\n"); printf("Preorder:"); PreorderTraversal(BT); printf("\n"); printf("Postorder:"); PostorderTraversal(BT); printf("\n"); printf("Levelorder:"); LevelorderTraversal(BT); printf("\n"); return 0;}void InorderTraversal( BinTree BT ){ if(BT) { InorderTraversal(BT->Left); printf(" %c",BT->Data); InorderTraversal(BT->Right); }}void PreorderTraversal( BinTree BT ){ if(BT) { printf(" %c",BT->Data); PreorderTraversal(BT->Left); PreorderTraversal(BT->Right); }}void PostorderTraversal( BinTree BT ){ if(BT) { PostorderTraversal(BT->Left); PostorderTraversal(BT->Right); printf(" %c",BT->Data); }}void LevelorderTraversal( BinTree BT ){ BinTree queue[100],T;//使用最简单的顺序队列,一定要定义为树型变量 int rear,front; rear=-1; front=-1; if(!BT) return; queue[++rear]=BT; while(rear!=front) { T=queue[++front]; printf(" %c",T->Data); if(T->Left) queue[++rear]=T->Left; if(T->Right) queue[++rear]=T->Right; }}
0 0
- 4-9 二叉树的遍历
- 4-9 二叉树的遍历*
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 二叉树的遍历
- 关于Android.view.WindowManager$BadTokenException异常
- 快捷键
- c++11 之type_traits
- 计算和清除webview缓存
- html5简单样式css3.0
- 4-9 二叉树的遍历
- Spring Cacheable标签 内部调用失效问题
- Windows下安装sphinx和创建索引及使用
- Hibernate 对象的三种状态 持久状态 临时状态 游离状态
- HTMLCSS基础-常见标签和SEO浅析
- 生成代理方法(generate delegate methods)
- HDU 2181 哈密顿绕行世界问题
- Apache 和 Tomcat 整合、服务器上搭建多个网站的方法
- js播放声音