[PTA] 数据结构与算法题目集 6-8 求二叉树高度 & 6-9 二叉树的遍历
2024-09-08 08:18:15
6.8 二叉树高度
int GetHeight(BinTree BT)
{
if (BT == NULL)
return 0;
int leftH = GetHeight(BT->Left);
int rightH = GetHeight(BT->Right);
if (leftH > rightH)
return leftH + 1;
else
return rightH + 1;
}
6-9 二叉树的遍历
void InorderTraversal(BinTree BT)
{
if (BT == NULL)
return;
InorderTraversal(BT->Left);
printf(" %c", BT->Data);
InorderTraversal(BT->Right);
}
void PreorderTraversal(BinTree BT)
{
if (BT == NULL)
return;
printf(" %c", BT->Data);
PreorderTraversal(BT->Left);
PreorderTraversal(BT->Right);
}
void PostorderTraversal(BinTree BT)
{
if (BT == NULL)
return;
PostorderTraversal(BT->Left);
PostorderTraversal(BT->Right);
printf(" %c", BT->Data);
}
void LevelorderTraversal(BinTree BT)
{
BinTree que[1000];
int top = -1;
int tail = -1;
if (BT)
que[++tail] = BT;
while (top < tail)
{
BinTree bt = que[++top];
printf(" %c", bt->Data);
if (bt->Left)
que[++tail] = bt->Left;
if (bt->Right)
que[++tail] = bt->Right;
}
}
最新文章
- expense KK [ɪkˋspɛns] DJ [iksˋpens]
- Windows系统安装Oracle 11g 数据库
- 【CISP笔记】安全漏洞与恶意代码(1)
- Android Design Support Library——Snackbar
- 如何使用 Migration创建一个迁移
- 对 HTTP 304 的理解
- 使用PHP-Barcode轻松生成条形码(一)
- Android下按钮的使用方法
- 一起来学canvas (前言)
- 使用java连接hive,并执行hive语句详解
- zoj1108 FatMouse's Speed
- rabbitmq问题之HTTP access denied: user &#39;guest&#39; - User can only log in via localhost
- [HDU 1973]--Prime Path(BFS,素数表)
- ldap基本命令
- 如何复原Eclipse的Package Explorer
- mybatis源码之SimpleStatementHandler
- spring的依赖注入是什么意思
- 安装nova后解决登录没账号问题
- git(三) 使用github
- JAVA002标识符的命名规则、关键字
热门文章
- Wolf RPG Editor游戏解包
- qt截获html请求(继承QNetworkAccessManager和QNetworkReply)
- 使用mingw编译完整Qt5的过程(使用了niXman的msys套装)good
- WebP 极限压缩及ios实现
- 当一个控件属性不存在的时候,IDE会出错在这里(说明是TWinControl.ReadState在读属性,并执行相关动作)
- 关于Android开发四大组件
- Windows服务器下的IIS和Apache性能比较
- SYN5605型 多通道时间间隔测量仪
- IOS 数据存储(NSKeyedArchiver 归档篇)
- 【转】Mysql索引最左匹配原则理解