二叉树三种遍历代码实现
来源:互联网 发布:淘宝卖家加入运费险 编辑:程序博客网 时间:2024/05/21 10:19
二叉树三中遍历代码实现
实现代码:
#include <stdio.h>#include <stdlib.h>typedef struct BiTNode{int data;BiTNode *lchild,*rchild;}BiTNode,*BiTree;void Insert(BiTNode **tree,int val){BiTNode *temp=NULL;if(!(*tree)){temp = (BiTNode *)malloc(sizeof(BiTNode));temp->lchild = temp->rchild = NULL;temp->data = val;*tree = temp;return; }if(val<(*tree)->data){Insert(&(*tree)->lchild,val);}else if(val>(*tree)->data){Insert(&(*tree)->rchild,val);}}void PreOrder(BiTNode *T){if(T){printf("%d ",T->data);PreOrder(T->lchild);PreOrder(T->rchild);}}void InOrder(BiTNode *T){if(T){InOrder(T->lchild);printf("%d ",T->data);InOrder(T->rchild);}}void PostOrder(BiTNode *T){if(T){PostOrder(T->lchild);PostOrder(T->rchild);printf("%d ",T->data);}}void DeleteTree(BiTNode *tree){if(tree){DeleteTree(tree->lchild);DeleteTree(tree->rchild);free(tree);}}int main(void){BiTNode *root;BiTNode *tmp;int i,a[7];root = NULL;printf("输入7个数:"); for(i=0;i<7;i++){ scanf("%d",&a[i]);Insert(&root,a[i]); }printf("前序遍历:");PreOrder(root);printf("\n中序遍历:");InOrder(root);printf("\n后序遍历:");PostOrder(root);printf("\n");DeleteTree(root);}
输出结果:
输入7个数:3 4 5 6 7 8 9前序遍历:3 4 5 6 7 8 9中序遍历:3 4 5 6 7 8 9后序遍历:9 8 7 6 5 4 3请按任意键继续. . .
阅读全文
0 0
- 二叉树三种遍历代码实现
- 二叉树三种遍历方式代码实现
- 二叉树前中后序遍历代码实现
- 二叉树的遍历(代码实现)
- java代码实现二叉树的遍历
- 遍历二叉树代码
- 二叉树构造与遍历的C程序实现代码
- 非递归实现二叉树遍历(思路+代码)
- 用java代码实现二叉树的遍历算法
- 二叉树的遍历思想及核心代码实现
- 二叉树非递归遍历复习代码实现
- 二叉树的各种遍历实现伪代码
- Java实现二叉树三种遍历算法
- 二叉树三种遍历非递归实现
- 二叉树三种遍历六种实现
- 【Java】二叉树三种遍历的递归实现
- 非递归实现二叉树三种遍历
- 二叉树三种遍历(java实现)
- 从反向传播到迁移学习,盘点人工智能从业者必备的10个深度学习方法
- 从变分边界到进化策略,一文汇总机器学习变换技巧
- 百度 AI 商业化表面的风光与背后的艰难,正是全员变身「工程派」的开始
- Elon Musk最感性专访:我期待失败,也期待真爱
- 摩尔定律还有效吗?
- 二叉树三种遍历代码实现
- 项目和积累同时进行,不偏废
- 淘淘商城笔记
- 学习笔记DL004:标量、向量、矩阵、张量,矩阵、向量相乘,单位矩阵、逆矩阵
- Azkaban
- 8. 多边形内角和
- SpringMVC操作数据库
- linux中断&poll按键处理机制
- c++ 牛客网刷题 Day1