第三章习题答案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第三章习题二、算法设计题2.设以数组se[m]存放循环队列的元素,同时设变量rear和front分别作为队头对尾的指针,且队头指针指向队头前一个位置,写出这样设计的循环队列入队出队的算法。入队算法:intin_csequeue1(datatypese[],int*rear,int*front,datatypex){if((*rear+1)%m==*front)return0;else{*rear=(*rear+1)%m;se[*rear]=x;return1;}}出队算法:intout_csequeue1(datatypese[],int*rear,int*front,datatype*x){if(*rear==*front)return0;else{*front=(*ftont+1)%m;*x=se[*front];return1;}}3.假设以数组se[m]存放循环队列的元素,同时设变量rear和num分别作为队尾指针和队中元素个数记录,是给出判断此循环队列的队满条件。写出这样设计的循环队列入队出队的算法。入队算法:intin_csequeue2(datatypese[],int*rear,int*num,datatype*x){if(*num==m)return0;else{*rear=(*rear+1)%m;se[*rear]=x;*num++;return1;}}出队算法:intout_csequeue2(datatypese[],intrear,int*num,datatype*x){if(*num==0)return0;else{*x=se[(rear-*num+1)%m];num--;return1;}}6.写一个算法,借助于栈将一个单链表置逆。voidconvert(linklist*L){Lnode*p,*q;seqstack*s;p=L;while(p){in_seqstack(s,p-data)p=p-next;}p=L;while(!empty_seqstack(s)){p-data=pop_seqstack(s);p=p-next;}}

1 / 2
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功