遍历二叉树
来源:互联网 发布:云联惠平台下载软件 编辑:程序博客网 时间:2024/06/04 23:19
//#include <iostream>//using namespace std;#include <stdio.h>#include <stdlib.h>struct BTNode{int data;struct BTNode *pLchild;struct BTNode *pRchild;};struct BTNode *CreateBTree(void);void PreTraverseBTree(struct BTNode *pT);void InTraverseBTree(struct BTNode *pT);void PostTraverseBTree(struct BTNode *pT);struct BTNode *CreateBTree(void){struct BTNode *pA = (struct BTNode *)malloc(sizeof(struct BTNode));struct BTNode *pB = (struct BTNode *)malloc(sizeof(struct BTNode));struct BTNode *pC = (struct BTNode *)malloc(sizeof(struct BTNode));struct BTNode *pD = (struct BTNode *)malloc(sizeof(struct BTNode));struct BTNode *pE = (struct BTNode *)malloc(sizeof(struct BTNode));pA->data = 'A';pB->data = 'B';pC->data = 'C';pD->data = 'D';pE->data = 'E';pA->pLchild = pB;pA->pRchild = pC;pB->pLchild = pB->pRchild = NULL;pC->pLchild = pD;pC->pRchild = NULL;pD->pLchild = NULL;pD->pRchild = pE;pE->pLchild = pE->pRchild = NULL;return pA;}void PreTraverseBTree(struct BTNode *pT){if (NULL != pT){printf("%c\n", pT->data);if (NULL != pT->pLchild)PreTraverseBTree(pT->pLchild);//左子树递归if (NULL != pT->pRchild)PreTraverseBTree(pT->pRchild);//右子树递归}}void InTraverseBTree(struct BTNode *pT)//左-根-右{if (NULL != pT){if (NULL != pT->pLchild)InTraverseBTree(pT->pLchild);//遍历到最左端的节点,并打印,然后打印根节点,然后打印右节点printf("%c\n", pT->data);if (NULL != pT->pRchild)InTraverseBTree(pT->pRchild);}}void PostTraverseBTree(struct BTNode *pT){if (NULL != pT){if (NULL != pT->pLchild)PostTraverseBTree(pT->pLchild);if (NULL != pT->pRchild)PostTraverseBTree(pT->pRchild);printf("%c\n", pT->data);}}int main(){struct BTNode *pT = CreateBTree();PreTraverseBTree(pT);InTraverseBTree(pT);PostTraverseBTree(pT);return 0;}
0 0
- 二叉树遍历、分层遍历
- 遍历二叉树--二叉树
- 【树】遍历二叉树
- 二叉树遍历
- 二叉树遍历
- 二叉树的遍历
- (原创)遍历二叉树
- 二叉树遍历-php
- 查找--遍历二叉树
- 遍历二叉树
- 二叉树遍历规则
- 二叉树的遍历
- 二叉树遍历
- 遍历二叉树
- 二叉树遍历问题
- 二叉树遍历
- 二叉树遍历(zz)
- 二叉树的遍历
- PAT-B 1033. 旧键盘打字(20)
- hashCode和hash值
- 快速排序的一种实现方法
- C/C++学习之路之C及C++发展史及标准
- 日历组件demo
- 遍历二叉树
- Appium Appium 开发环境搭建 (1)--配置源码运行环境
- [swift]5.0控制语句
- Android LayoutInflater加载.xml文件原理分析
- 0305-HTML小白
- Android Activity的启动过程
- HDU2535
- Unity协程
- Hwadee实训--day08