电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

二叉树遍历所有代码VIP专享VIP免费

二叉树遍历所有代码_第1页
二叉树遍历所有代码_第2页
二叉树遍历所有代码_第3页
#include #include #include #include #include #define SIZE 100 using namespace std; typedef struct BiTNode //定义二叉树节点结构 { char data; //数据域 struct BiTNode *lchild,*rchild; //左右孩子指针域 }BiTNode,*BiTree; int visit(BiTree t); void CreateBiTree(BiTree &T); //生成一个二叉树 void PreOrder(BiTree); //递归先序遍历二叉树 void InOrder(BiTree); //递归中序遍历二叉树 void PostOrder(BiTree); //递归后序遍历二叉树 void InOrderTraverse(BiTree T); //非递归中序遍历二叉树 void PreOrder_Nonrecursive(BiTree T);//非递归先序遍历二叉树 void LeverTraverse(BiTree T);//非递归层序遍历二叉树 //主函数 void main() { BiTree T; char j; int flag=1; //--------------------- 程序解说----------------------- printf("本程序实现二叉树的操作。\n"); printf("叶子结点以空格表示。\n"); printf("可以进行建立二叉树,递归先序、中序、后序遍历,非递归先序、中序遍历及非递归层序遍历等操作。\n"); //---------------------------------------------------- printf("\n"); printf("请建立二叉树。\n"); printf("建树将以三个空格后回车结束。\n"); printf("例如:1 2 3 4 5 6 (回车)\n"); CreateBiTree(T); //初始化队列 getchar(); while(flag) { printf("\n"); printf("请选择: \n"); printf("1.递归先序遍历\n"); printf("2.递归中序遍历\n"); printf("3.递归后序遍历\n"); printf("4.非递归中序遍历\n"); printf("5.非递归先序遍历\n"); printf("6.非递归层序遍历\n"); printf("0.退出程序\n"); scanf(" %c",&j); switch(j) { case '1':if(T) { printf("递归先序遍历二叉树:"); PreOrder(T); printf("\n"); } else printf("二叉树为空!\n"); break; case '2':if(T) { printf("递归中序遍历二叉树:"); InOrder(T); printf("\n"); } else printf("二叉树为空!\n"); break; case '3':if(T) { printf("递归后序遍历二叉树:"); PostOrder(T); printf("\n"); } else printf("二叉树为空!\n"); break; case '4':if(T) { printf("非递归中序遍历二叉树:"); InOrderTraverse(T); printf("\n"); } else printf("二叉树为...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部