设为首页 加入收藏

TOP

二叉树,递归非递归遍历算法(全)(二)
2015-07-20 17:21:05 来源: 作者: 【 】 浏览:9
Tags:算法
tNode(BiTNode *T) { if(T == NULL) return 0; return 1+CountNode(T->lchild)+CountNode(T->rchild); } int main(void) { BiTNode *root=NULL; //定义一个根结点 int flag=1,k; printf(" 本程序实现二叉树的基本操作。\n"); printf("可以进行建立二叉树,递归先序、中序、后序遍历,非递归先序、中序遍历及非递归层序遍历等操作。\n"); printf("请建立二叉树并输入二叉树的根节点:"); CreateBiTree(&root); if(root) { printf("递归先序遍历二叉树的结果为:"); PreOrder(root); printf("\n"); printf("递归中序遍历二叉树的结果为:"); InOrder(root); printf("\n"); printf("递归后序遍历二叉树的结果为:"); PostOrder(root); printf("\n"); printf("非递归先序遍历二叉树:"); PreOrder_Nonrecursive(root); printf("\n"); printf("非递归中序遍历二叉树:"); InOrderTraverse(root); printf("\n"); printf("非递归后序遍历二叉树:"); PostOrder_Nonrecursive(root); printf("\n"); printf("非递归层序遍历二叉树:"); //LeverTraverse(root); LevelOrder(root); printf("\n"); printf("这棵二叉树的深度为:%d\n",depth(root)); printf("这棵二叉树的结点个数为:%d\n",CountNode(root)); printf("程序运行结束,按任意键退出!\n"); } system("pause"); return 0; }

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇[LeetCode]Find Minimum in Rotat.. 下一篇hdu4320Arcane Numbers

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·【C语言】动态内存管 (2025-12-27 06:23:20)
·C语言中的内存管理 - (2025-12-27 06:23:16)
·C语言指南:C语言内 (2025-12-27 06:23:14)
·Redis on AWS:Elast (2025-12-27 04:19:30)
·在 Spring Boot 项目 (2025-12-27 04:19:27)