求结点层次及宽度(国外英文资料).docVIP

求结点层次及宽度(国外英文资料).doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
求结点层次及宽度(国外英文资料)

求结点层次及宽度(国外英文资料) # include“stdio . h” # include“stdlib.h” # include“conio.h” # include“string.h” #定义好1 #定义错误0 #定义真正的1 #定义错误0 #定义溢出1 #定义不可行的2 #定义Max_Tree_SIZE 20 / /最大结点数 #定义STACK_INIT_SIZE 100 #定义STACKINCRENT 10 #定义MAXQSIZE 100 typedef int状态; typedef char TElemType; typedef struct BiTNode { TElemType数据; struct BiTNode * lchild,* rchild;/ /左右孩子指针 } BiTNode * BiTree; / /定义队列中数据元素 typedef struct { BiTree Bi; 智力水平; } QElemType; / /队列模块 typedef struct队列{ QElemType *基地; int面前;/ / int后方;/ / } SqQueue; 地位InitQueue(SqQueue * Q); 地位DestroyQueue(SqQueue * Q); 地位ClearQueue(SqQueue * Q); 状态QueueEmpty(SqQueue问); 状态GetHead(SqQueue Q,QElemType * e); 状态队列(SqQueue * Q,QElemType * e); 状态出列(SqQueue * Q,QElemType * e); 地位InitQueue(SqQueue * Q)/ /初始化队列 { Q - 基础=(QElemType *)malloc(MAXQSIZE * sizeof(QElemType)); 如果(! Q - 基础) 退出(溢出); Q - =前面Q - 后= 0;/ / 还好; } 地位DestroyQueue(SqQueue * Q){ 如果(Q - 基础) 自由(Q - 基础); Q - =前面Q - 后= 0; 还好; } 地位ClearQueue(SqQueue * Q){ 如果前面(Q - = = Q - 后) 返回错误; 其他的 Q - =前面Q - 后= 0; 还好; } 状态QueueEmpty(SqQueue Q){ 如果(Q.front = = Q.rear) 返回TRUE; 其他的 返回错误; } 状态GetHead(SqQueue Q,QElemType * e)/ /取队头元素 { 如果(Q.rear = = Q.front) 返回错误; * e = Q.base[Q.front]; 还好; } 状态队列(SqQueue * Q,QElemType * e)/ /在队尾插入新的元素,入队 { 如果((Q - 后+ 1)% MAXQSIZE = = Q - 前) 返回错误; Q - 基础[Q - 后]= * e; Q - 后=(Q - 后+ 1)% MAXQSIZE; 还好; } 状态出列(SqQueue * Q,QElemType * e) { 如果前面(Q - = = Q - 后) 返回错误; * e = Q - 基础(Q - 前); 前面问- =(Q - 前+ 1)% MAXQSIZE; 还好; } / / / / / / / / / / / / / / / / / / / / / / / / / / / / /队列模块/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / 地位InitBiTree(BiTree * BT);/ /构造空二叉树 地位CreateBiTree(BiTree * BT);/ /建立二叉树 预订状态(BiTree BT);/ /先序遍历 状态”(BiTree BT);/ /中序遍历 状态后根次序(BiTree BT);/ /后序遍历 状态GetLevel(BiTree BT);/ /按层次遍历求层次 状态NRPreOrder(BiTree BT);/ /先序非递归遍历二叉树 int TreeWidth(BiTree BT);/ /求宽度 void main() { BiTree BT; int标志= 1,选择; InitBiTree(bt); printf(创建二叉树,请输入“#”预订:\ n );/ /输入二叉树的先序序列,用#代表空结点 CreateBiTree(BT);/ /创建二叉树,返回根结点BT 获取字符(); 而(国旗){ printf( \ nPlease选择:\ n ); pri

文档评论(0)

f8r9t5c + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档