数据结构和算法实验指导书 下载本文

内容发布更新时间 : 2024/5/15 12:57:39星期一 下面是文章的全部内容请认真阅读。

WORD格式可编辑 return 0; else if(Depth(T->lchild)>Depth(T->rchild)) return Depth(T->lchild)+1; else return Depth(T->rchild)+1; }

void main() { BiTree T; int sum,dep; T=Create(T); Preorder(T); printf(\ zhongxu(T); printf(\ houxu(T); printf(\ sum=Sumleaf(T); printf(\ dep=Depth(T); printf(\ }

2、写出二叉树的层序遍历函数(选做) #include #include #include

#define STACK_MAX 100

typedef struct BiTNode{ char data;

struct BiTNode *lchild,*rchild; }BiTNode,*BiTree;

typedef struct{ int front, rear;

专业知识分享

WORD格式可编辑 BiTNode * data1[STACK_MAX]; } Queue;

void initQueue (Queue *q) /*初始化队列*/ {

q->rear=0; q->front=0; }

int EmptyQueue(Queue *q)/*判断队列空*/ {

if(q->rear==q->front)return 1; else return 0; }

BiTNode * DeQueue(Queue *q) /*出队列*/ {

return q->data1[(q->front)++]; }

void InQueue(Queue *q,BiTNode * p) /*入队列*/ {

if (q->rear==STACK_MAX) { printf(\ } else

q->data1[(q->rear)++]=p; }

BiTree Create(BiTree T) { char ch; ch=getchar(); if(ch=='#') T=NULL; else { if(!(T=(BiTNode *)malloc(sizeof(BiTNode)))) printf(\ T->data=ch; T->lchild=Create(T->lchild); T->rchild=Create(T->rchild); } return T;

专业知识分享

WORD格式可编辑 }

Cengxu(BiTree T,Queue * q) { BiTree p; //定义一个暂存节点数据的树形指针 if(T!=NULL) //如果树非空

{

InQueue(q,T); //将根节点入队

while(!EmptyQueue(q)) //如果当前的队列不为空,循环输出输入 {

p=DeQueue(q);

//用指针p暂存节点,用于输出

printf(\

if(p->lchild!=NULL) InQueue(q,p->lchild);//将左子树入队 if(p->rchild!=NULL) InQueue(q,p->rchild);//将柚子树入队

} }

}//二叉树层序遍历 void main() { BiTree T; Queue q; initQueue(&q); T=Create(T); Cengxu(T,&q); printf(\}

四、实验报告要求 1、撰写实验报告;

2、对实验中出现的问题和结果进行总结。

专业知识分享

WORD格式可编辑

文明施工 ①依据业主、监理有关要求,落实施工组织文件,明确各工序管理、材料管理、机械管理、成本管理、劳动管理。 ② 对全体职工,特别是民工,在进场前进行文明、安全施工教育,不断提高职工的文明施工意识和自身素质。 ③建立文明施工管理制度,采用统一规范临设,围档整齐,符合要求,临设要牢固整齐,材质符合要求。 ④运料车运料时要用帆布覆盖,以防沿路遗撒和扬尘。施工道路要保证湿润,以防车辆行驶扬尘。 ⑤场地内材料与设备要保持整齐,并保证场地内的清洁。

专业知识分享