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;
}
}

最新文章

  1. expense KK [ɪkˋspɛns] DJ [iksˋpens]
  2. Windows系统安装Oracle 11g 数据库
  3. 【CISP笔记】安全漏洞与恶意代码(1)
  4. Android Design Support Library——Snackbar
  5. 如何使用 Migration创建一个迁移
  6. 对 HTTP 304 的理解
  7. 使用PHP-Barcode轻松生成条形码(一)
  8. Android下按钮的使用方法
  9. 一起来学canvas (前言)
  10. 使用java连接hive,并执行hive语句详解
  11. zoj1108 FatMouse's Speed
  12. rabbitmq问题之HTTP access denied: user &#39;guest&#39; - User can only log in via localhost
  13. [HDU 1973]--Prime Path(BFS,素数表)
  14. ldap基本命令
  15. 如何复原Eclipse的Package Explorer
  16. mybatis源码之SimpleStatementHandler
  17. spring的依赖注入是什么意思
  18. 安装nova后解决登录没账号问题
  19. git(三) 使用github
  20. JAVA002标识符的命名规则、关键字

热门文章

  1. Wolf RPG Editor游戏解包
  2. qt截获html请求(继承QNetworkAccessManager和QNetworkReply)
  3. 使用mingw编译完整Qt5的过程(使用了niXman的msys套装)good
  4. WebP 极限压缩及ios实现
  5. 当一个控件属性不存在的时候,IDE会出错在这里(说明是TWinControl.ReadState在读属性,并执行相关动作)
  6. 关于Android开发四大组件
  7. Windows服务器下的IIS和Apache性能比较
  8. SYN5605型 多通道时间间隔测量仪
  9. IOS 数据存储(NSKeyedArchiver 归档篇)
  10. 【转】Mysql索引最左匹配原则理解