版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include#include#include#define STACK_INIT_SIZE 100#define STACKINCREASE 10类型图元;类型;typedef struct BiTNodeTElemType data;结构位* rchild、* rchild;PS节点、* PS树;类型树树状结构元素;类型树qelemtype;typedef struct QNodeQElemType data;结构qnode * next;QNode、*Queue;typedef struct伫列前端;队列三年;LinkQueue;typedef structSElemType *bas
2、e;SElemType *top;堆叠大小;SqStack;我是说,我是说,我是说将voidsinitstack(sqstacks )发送到s.base=(elemtype * ) malloc (stack _ init _ size * sizeof (elemtype ) );S.top=S.base;s .堆叠尺寸=堆叠_ init _ size;/init堆栈void Push(SqStack S,SElemType e)if(s.top-s.base=s.stacksize)s.base=(elemtype * ) realloc (s.base,(s.stacksizestack
3、increase ) * sizeof (elemtype ) );PK (! S.base )exit(1)s.top=s.base s .堆栈大小;s .堆栈大小=堆栈索引;以下*S.top =e;以下使用int Pop(SqStack S,elemtypee )。if(S.base=S.top )返回- 1;e=*-S.top;返回0;以下我是说,我是说,我是说voidininitqueue (链路队列q ) q.front=q.rear=(队列) malloc (大小(qode ) );PS (! q .前端退出(1)Q.front-next=NULL;/InitQueue语音队列q,
4、QElemType e)队列p;p=(队列) malloc (大小(qnode ) );PK (! p )退出(1)p-data=e;p-next=NULL;q .下一步=p;Q.rear=p;q .下一个=空;/EnQueueint DeQueue(LinkQueue Q,QElemType e) )队列队列p;PS (K.front=q.rear )返回0;p=Q.front-next;e=p-data;q .前下一个=p -下一个;表示if(Q.rear=p)Q.rear=Q.front;Q.rear-next=NULL;以下免费(p )返回0;/DeQueue二叉树,二叉树,二叉树,二
5、叉树请参见bitreeprecreattebitree () ()。碧树p;char ch;ch=getchar ();ch=getchar ();PS (ch=# )返回空值;p=(树) malloc (大小(节点) );p-data=ch;p-lchild=PreCreateBiTree ();p-rchild=PreCreateBiTree ();返回p;/precreattebitree将void postcreatebitree1(bi tree Bt ) )SqStack S;char ch;碧树p;启动堆栈(s )while(1)ch=getchar ();ch=getchar
6、();if(ch= )break;PK (AK=# )推(s,NULL )elsep=(树) malloc (大小(节点) );p-data=ch;Pop(S,p-rchild )Pop(S,p-lchild )推(s,p )以下以下Pop(S,bt )/PostCreateBiTree1bitreepostcreatebitree2(); 请参见。char ch;碧树p;ch=getchar ();ch=getchar ();PK (AK=# )返回空值;p=(树) malloc (大小(节点) );p-data=ch;p-rchild=PostCreateBiTree2();p-lchil
7、d=PostCreateBiTree2();返回p;/PostCreateBiTree2intpre_incrementate(bitreebt,char *P,char *Q,int n)PS;Bt=(bi tree ) malloc (sizeof (bi node ) );bt-data=P0;请参见if(n=1)1。 2bt-lchild=NULL;bt-rchild=NULL;返回0;以下for(i=0; il child=(bi tree ) malloc (sizeof (bi node ) );bt-lchild-data=P1;Pre_InCreate(bt-lchild、P
8、 1、q、I )以下elsebt-lchild=NULL;PS!=n-1)Bt-rcild=(bi树) malloc (sizeof (bi node ) );bt-rchild-data=P1 i;Pre_InCreate(bt-rchild,P 1 i,Q 1 i,n-1-i )以下elsebt-rchild=NULL;返回0;/Pre_InCreateint In_PostCreate(BiTree bt,char *P,char *Q,int n) )PS;Bt=(bi tree ) malloc (sizeof (bi node ) );bt-data=Qn-1;请参见if(n=1)
9、1。 2bt-lchild=NULL;bt-rchild=NULL;返回0;以下for(i=0; il child=(bi tree ) malloc (sizeof (bi node ) );bt-lchild-data=Qi-1;in _ post创建(Bt-lchild,p,q,I )以下elsebt-lchild=NULL;PS!=n-1)Bt-rcild=(bi树) malloc (sizeof (bi node ) );bt-rchild-data=Qn-2;in _ post创建(Bt-rchild,P i 1,Q i,n-i-1 )以下elsebt-rchild=NULL;返回
10、0;/in_postcreate使用voidvisit(trebletypech )。printf(%c ,ch );/Visit请参阅int PreRead(BiTree bt)PK (! PS )返回0;Visit(bt-data )预读(Bt-lchild )预读(Bt-rchild )返回0;/PreRead请参阅读入(bi tree Bt ) PK (! PS )返回0;读入(Bt-lchild )Visit(bt-data )读入(Bt-rchild )返回0;/InReadint PostRead(BiTree bt)PK (! PS )返回0;PostRead(bt-lchil
11、d )PostRead(bt-rchild )Visit(bt-data )返回0;/PostRead英特尔读(bi tree Bt ) AK链路队列q;碧树p;PS (! PS )返回0;InitQueue(Q )EnQueue(Q,bt )while (! (Q.front=Q.rear)请参见DeQueue(Q,p )Visit(p-data )if (p-lchild )要求(q,p-lchild )if (p-rchild )要求(q,p-rchild )以下返回0;/TierReadint Number(BiTree bt)int n1、n2;PK (! Bt )返回0;n1=Nu
12、mber(bt-lchild )n2=Number(bt-rchild )return 1 n1 n2;/Number以int Leaf(BiTree bt) )为首int l1、l2;PS (! Bt )返回0;PS (! PS PS PS! Bt-rchild )返回1;l1=Leaf(bt-lchild )l2=Leaf(bt-rchild )返回L1 L2;/Leafint heightint h1、h2;PK (! Bt )返回0;h1=Height(bt-lchild )h2=Height(bt-rchild )return 1 (h1h2? h1:h2;/Heightint wi
13、de (bi树Bt,int *w,intx ) 22222222222222222222222222PK (! PS )返回0;PSwx=wx 1;PS (PC-lchild )宽度(一个蓝光灯,w,x 1)PS (PR PS )宽度(一个飞行器,w,x 1)返回0;/Wide语音复制(bi树p、bi树q )PS树PS、PS;PS (! 问)P=NULL;else复制(LP,Q-lchild )复制(RP,Q-rchild )p=(树) malloc (大小(节点) );P-data=Q-data;P-lchild=lp;P-rchild=rp;以下/CopyBiTree将int DestroyBiTree(BiTree bt) )PK (! PS )返回0;PS (PC-lchild )bitdestroyree(bt-lchild )PPSbitdestroyree(bt-rcild )PK (! PS PS PS! PS PS自由号列车bt=NULL;返回0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 线上绿色农业进入障碍解决合同
- 2026年工地职业病危害因素检测与防护
- 2026年养老院用火用电用气安全知识培训课件
- 公关活动赞助商权益保障协议书
- 2026年情感智力培养在中小学教育中的实践路径
- 音乐培训机构教学质量评估合同
- 2026年集体用餐配送单位食品安全年度培训计划
- 线上金色降落伞数据标注服务协议2026
- 2026年泥鳅人工繁殖与高产养殖技术规范
- 2026年课堂互动技巧与游戏设计
- 2025年《中华人民共和国公司法》知识竞赛试卷及答案
- 2026年一级注册建筑师《建筑材料与构造》模拟考试题库有答案详解
- 2026年宁都技师学院招聘编外教师44人笔试参考题库及答案解析
- 2026年安徽省合肥市高三二模英语试题(含答案和音频)
- 2026年录音摄像员通关试题库附答案详解(能力提升)
- 2025年河北省地级市联考遴选笔试真题解析附答案
- 2026科技日报社招聘应届高校毕业生7人考试备考试题及答案解析
- 广西能汇投资集团有限公司招聘笔试题库2026
- 监理安全管理制度和预案(3篇)
- 2026校招:华泰证券笔试题及答案
- 2026年1月浙江省高考(首考)化学试题(含标准答案)
评论
0/150
提交评论