二叉树的基本操作
来源:互联网 发布:java工程师具备的条件 编辑:程序博客网 时间:2024/06/05 07:51
#include<stdio.h>#include<string.h>typedef struct BiTNode{ char data; struct BiTNode *lchild, *rchild;}*BiTree;void CreateBiTree(BiTree &T){ char ch; scanf(" %c", &ch); if('@' == ch){ T = NULL; return ; } T = new BiTNode; T->data = ch; CreateBiTree(T->lchild); CreateBiTree(T->rchild);}void PreOrderTraverse(BiTree T){ if(!T) return ; printf("%c ", T->data); PreOrderTraverse(T->lchild); PreOrderTraverse(T->rchild);}void InOrderTraverse(BiTree T){ if(!T) return ; InOrderTraverse(T->lchild); printf("%c ", T->data); InOrderTraverse(T->rchild);}void PostOrderTraverse(BiTree T){ if(!T) return ; PostOrderTraverse(T->lchild); PostOrderTraverse(T->rchild); printf("%c ", T->data);}int Depth(BiTree T){ if(T == NULL) return 0; int m = Depth(T->lchild); int n = Depth(T->rchild); return m>n?m+1:n+1;}int main(){ BiTree T; CreateBiTree(T); PreOrderTraverse(T); printf("\n"); InOrderTraverse(T); printf("\n"); PostOrderTraverse(T); printf("\n"); printf("%d\n", Depth(T)); return 0;}
未完待续~~~
阅读全文
0 0
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- 二叉树的基本操作
- spark2.2.0 SBT配置
- 冲突域和广播域的区分
- 网易2018校园招聘:相反数 [python]
- 【LeetCode】88. Merge Sorted Array
- 禁用/启用网卡
- 二叉树的基本操作
- 游戏服务器架构
- java设计模式(精心整理)
- 堆和堆的应用:堆排序和优先队列
- Python自然语言处理第二章-2.5 WordNet(I)——意义与同义词
- VMware虚拟机无法联网
- 网易2018校园招聘:重排数列 [python]
- Error reading manifest file manifest.yml must be owned by the beat user (uid=0) or root
- Glide V4源码解析