2024年电大数据结构本期末考试试卷重点_第1页
2024年电大数据结构本期末考试试卷重点_第2页
2024年电大数据结构本期末考试试卷重点_第3页
2024年电大数据结构本期末考试试卷重点_第4页
2024年电大数据结构本期末考试试卷重点_第5页
已阅读5页,还剩10页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

最新甯大数据构造[本]期末考试试卷重黠整、字迹清晰。

汇^3,^考生按班题号次序.在各题目的答题区域内作

答,超谩答题区域也写的答案辗效;在草稿纸、试题卷上

答题瓢效。

考试答题注意事项:

4、^考生保抨答题卡而清洁,不要折叠、弄破、弄

1、考生答题前,先将自巳的姓名、准考证号等信息

统,不准使用涂改液、修正液、刮纸刀。

填写清晰,同步将条形码精确粘贴在考生信息条形玛粘

贴区。

【本部分作业援维教材第12章的内容】

2、考试答题畴.选择题必须使用2B铅笔烟涂;非选

择题必须使用0、5亳米黑色字迹的签字笔杳写,字体工

堂、学项选择题A、所使用的计算机B、和计算机的操作系统

1、在数据构造中,在逻辑上可以把数据构造分检C、和算法自身D、和数据构造

[C1,9,设有壹种叔度的次序表,要在第i0元素之

A、勃态构造和静态构造B、紧凑构造和非紧凑构造前【也就是插入元素作悬新表的第i他元素】,则移勤元

C、线性构造和非线性构造D、内部构造和外部机构素佃数检(A1

2、下面就法中,绪误的是【I)】、A,n-i+lB,n-iC.n-i-lD.i

A、数据元素是数据的基本军位10、设有壹种衰度卷n的次序表,要删除第i他元素

人数据项是数据中不可分割的最小可棵识阜位移勤元素的倒数悬[B],

C、数据可有若干佃数据元素构成A,n-i+lB,n-iC、n-i-lD.i

D、数据项可由若干低数据元素构成11、在壶和单链表中.p、q分别指向表中两僧相

3、麦种存储结粘存储金种[B1.翎的,且q所指.结黠是p所指^.黠的直接彼继,

A.数据项氏数据元素现要删除q所指结黠,可用^句[C],

C、数据构造D、数据类型A、p=q->nexlB,p->next=qC»p->next=q->nextD,

4、数据构造中,和所使用的计算机维关的是数据的q->next=NULL

【C】、12、在豆种邕鞋表中p所指皓黠之篌插入豆种s

Z存储构造B、物理构造所指的拓砧畴,可执行(D1

C、逻堤构造D、物理和存储构造A、p->next=s:s-^next=p->nextB,

5、下面的论述中,不属于算法特性的是【I)】、p->next=s->ne.<t;

A、有穷性B、揄入性C,p=s->n?xtDss->next=p->nexl;p->next=s;

C、可行性D、可潼性13,非空的岸向循环犍表的尾结熟满足其】【设醺

6、算法分析的目的是【C】、指针禹head,指针p指向尾结钻1

A、找出数据构造的合理性B、研究算法中的输入和A、、P->next==NULLB,P=NULL

依出的关系C.P->next=headD.P==head

C、分析算法的效率以求改善D、分析算法的易慢性14、链表不具有的特黠是[A].

和文档性A、可随机访艮1任爱元素B、插入删除不需要移勒元

7、数据构造是登门研究计算机中[B]封象及其关素

系的科阜、C,不必事先后计存储空间D、所需空间和线性表畏

A、数值运算B、非数值运算度成正比

C、集合D、非集合15、带^结黠的链表卷空的判断条件是【R】【设醺

8,算法的畴间复杂度和[C]有关、指针篇head],

A、head==NULL邻的结黠,且q所指结黠是p所指结黠的直接接继,说,要

B、head->next==NULL删除q所指皓黠,可用^句【口、

C,head->next-headA、p=q->next

D、head!=NULLB,p->next=q

16、在孟种一电链表中,p、q分别指向表中两佃相C,p->next=q->next

D,q->next=NULL二、埴空黑

17、在壹种链队中.假设f和r分别卷队殖和队尾指1、在壹种房度卷n的次序存储构造的线性表中.向

针,则删除登种结黠的运算卷【C】、第i(l$i《n+l)佃元素之前插入新元素畤,需向接移曼1_

A、r=f->next;B,r=r->next;n-i+l_僧数据元素、

C、f=f->next;f=r->next;2.徙晨度悬n的采纳次序存储构造的线性表中删除

18、在登种链队中,假设f和r分别卷队^和队尾指第i(l《i《n+l)佃元素,带向前移勤_n-iJS元素、

针,则插入s所指结黠的运算悬[B].3,数据构造按结黠间的关系,可分检4种逻辑构造:

A、f->next=s;f=s;B,r-)next=s;r=s;集合_、

C、s->next=r;r=s:D,s->next=f;f=s:―线性构造_、—树形构造_、—图状构

19、宣种次序表第壹种元素的存储地址是90,每佃元造一、

表的房度热2.则第6他元素的地址是[BJ.4.数据的逻轨构造在计售机中的表达称物理构

A、98B、100C.I02D、106造_或_存储构造_、

20.有关线性表的封的^法是【D】、5,除了第1他和最终考种结黠外,其他结黠有且只

A、每僧元素均有专种直接前驱和爱种直接彳发继有壹种前驱结黠和接维^黠的数据构造卷—线性构

氏线性表至少规定壹种元素造每倜结.黠可有任意多种前驱和彳为继结.黠数的构造

C、表中的元素必须按由小到大或由大到下排序非线性构造、

D、除了壹种和最终查种元素外,其他元素均6、算法的5倜重要特性是_有穷性_、_确定性_、

有麦种且仅有宣种直接前驱和壹种直接送继可形性_、—有尊倜或多种输入_、

—有零他或多种输出_、17、数据的逻缉构造是微逻辑关系上描述数据,它和

7,数据构造中的数据兀索存在多刿多的关系数据的关系—存储构造_嶷关,是独立于计算机的、

称卷—图状构造—构造、18.在双向循环链表的每佃结黠中包括_两他—指针

8、数据构造中的数据元素存在堂封多的关系域,其中next指向它的_直接彳菱继_.prior指向它的_

称检一树形构造—构造、直接前驱—.而^知勒的prior指向—尾结黠_,尾结要占

9.数据构造中的数据元素存在登封壹的关系的next指向_取悠勒_、

称将一线性构造—构造、19、单向循环链表是单向链表的查种扩充,常单向链

10.规定在n僧数据元素中找其中值最大的元素.设表带有^结熟畴,把卑向链表中尾筋黠的指针域由空指

基本操作卷元素间的比较、则比较的次数和算法的畴间针改玛结钻的指针_;常.单向链表不带^^黠畴,

复杂度分别悬_51_和_061)_、则把单向链表中尾结黠的指针域由空指针改卷指向—

11.在壹种隼链表中p所指常.黠之接插入壹种s所指向第壹种结黠的指针—、

指结.粘畤,应执行_s->next=p->next_和p->next=s;20、线性链表的逻辑关系畤通通每他需粘指针域中

豹操作、的指针来表达的、其逻辑次序和物理存储次序不再壹致.

12、设有壹种醺指针卷head的单向循环链表,p指向而是壹种—链式—存储构造,又称链表_、

性表中的结粘,着三、尚答悲

p->ncxt—_head_.则p所指结钻•施尾结黠、1、简述数据的逻辑构造和存储构造的区别和联络.

13.在壹和里向链表中,要删除p所指结黠.已知q它怎样影响算法的设计和实现?

指向p所指皓.粘的前驱结黠、则可以用操作_答:若用结粘未达某佃数据元素,则结黠和皓黠之间

q->next=p->next_、的逻辑关系就称悬数据的逻辑构造、数据在计算机中的

14、设有壹种醺指针卷head的单向链表,p指向表中存储表达称卷数据的存储构造、可见,数据的逻辑构造是

某卷种牯,砧,_3_有p->ncxt―NULL,遍通操作反应数据之间的固有关系,而数据的存储构造是数据在

_p->next=head_,就可使该单向链表构导致单向循环计算机中的存储表达、尽管因采纳的存储构造不宣样,逻

渣表、辑上相邻的结黠,其物理地址未必相似,但可通谩结黠的

15、每他结黠只包括壳种指针域的线性表叫_单链内部信息,找到其相邻的益黠,优而保留了逻辑构造的特

表一、黠、采纳的存储构迨不查样.封数据的操作在灵活性,算

16.线性表具有一次序存储_和_链式存储一两种法复杂度等方面差异较大、

存储构造、2,解释次序专储构造和链式存储构造的特黠,并比

较次序存储构造和链式存储构造的优缺陷、p=(NODE*)malloc(sizeof(NODE));

答:次序构造存储畴,相邻数据元素的寄存地址也相head-p;q-p:p->next=NULL;

邻,即逻辑杓造和存储构造是统立的,,规定内存中存储for(i=l:i<=n:i++)

单元的地址必须是持续的、(

房处:查般状况下,存储密度大,存储空间运用率高、p=(NODE*)malloc(sizeof(NODE));

缺陷:rr在做插入和删除操作畤,需移勤大量元素;[11p->data=i:

[2]由于难以估计,必须预先分派较大的空间,往往使存[2][:->next=NULL;

储空间不能得到充足运用:【3】表的容量难以扩充、[3]q->next=p;

链式构造存储畤,相邻数据元素可随意寄存.所占空[11q=D:

间分检两部分,壹部分寄存结粘值,另壹部分寄存表达结}

拈间关系的指针.return(head):

房处:插入和删除元素畴很以便,使用灵活、}

缺陷:存储密度小,存储空间运用率低、2,下面是用阳插法建立带^结.粘的且有n佃结黠的

3、什么状况下用次序表比链表好?单向链表的算法.需在空格内填上合适的^句、

答:次序表适于做查找造样的静杰操作,链表适于做N0DE*create2(n)

插入和删除造样的勤态操作、假如线性表的变化看:度变/*封线性表(n,n-l................1),一立带

化不大,且其重要操作是查找,则采纳次序表;假如线性黠的线性链表*/

表的畏度变化较大,且其嚏:要操作是插入、删除操作,则(

采纳链表、NODE*head,*p,*q;

4、指针、古黠、第堂种结黠[或称首元结黠】inti;

的区别是什么?p=(NODE*)malloc(sizeof(NODE)):

殖结黠是在镂表的^始结黠之前附加的壹种结黠;[1]head=p;

第壹种,结黠【或称首元结黠】是链表中存储第受种数据p->next=NLLL;

元素的结黠指针是指向链表中笫壹种牯勒【或结[2]g=p;

玷或卷首元皓.粘】的指针、for(i=l;i<=n;i++)

5、耨释带^牯黠的单链表和不带醺^粘的单链表的|

区别、p=(NODE*)malloc(sizeof(NODE));

答:p->data=i;

带粘的单链表和不带^的军绕表的区别重if(i=l)

要体目前其构造上和算法操作上、【3】

在构造上,带殖结.粘的罩镂表,不管锥表与否卷空,p->next=N!JLL;

均具有壹种,不带51结黠的单链麦不含绪粘、else

在操作上,带^结黠的阜链表的初始化检申睛壹种[I]p->next=q->next:

殖结黠、舞论插入或删除的位置是地第壹种结粘遗是其[5]g->next=p;

他结黠,算法环节都相似、不带^鳍黠的单箧表.其算法)

环节要分别考虑插入或删除的位费是第壹种结粘遢是其return(head):

他结黠、由于两种状况的算法环节不受样、

)

四、程序填空题

1、下面是用尾插法建立带^牯.黠的且有n僧结黠的3、下面是在具有黠单向列表中删除第i0结黠,

军向钺表的算法,箫在空掐内填上合适的^句、箫在空柩内填上合适的^句、

NODE*creatcl(n)intde1ete(NODE♦head,inti)

/*封线性表(1,2...............n),建立带射钻的

单向域表*/NODE*p,*q;

intj;

N0DE*head,*p,*q:q=head:

inti;j=0;

while((q!=NULL)&&(j<i1))/*找法应常设置LA】、

到要删除缩黠的直接前驱,并使q指向它A、栈B、队列

C.堆栈或队到D、数组

7,体现式a*(b+c)・d的接殿体说式是(BL

q=q->next;A、abcd*+-B,abc+*d-C、abc*++d-D,-4*abcd

j++;8.判断登种次序队列sq【最多元素卷mJ卷空的条

)件是[C].

if(q=NLLL)A、sq->rear-sq->fronl==m(B、

return(0):sq->rear-sq->froit-1==nx>

[1]p=Q->next;C.sq->front=sq->rearD,sq->front=sq->rear+1

39.判断查种循环队列Q【最多元素卷m”】悬空的条

q->next=p->next:件是[A].

free(p);A、Q->front==Q->rearB,Q->front!=Q->rear

return(1);C、Q->front=(Q->rear+l)%m)D.

)Q->front!=(Q-〉rear+l)%mu

五、完毕:试脸1一一线性表10,判断栈S满【元素僧数最多n低】的条件是【(1

根据试脸规定【凫教材P刈m】认真完毕本试骗,并A、s->top==03,s->top!=0

梃交试股汇报、C、s->top==n-iD»s->top!=n-l

数据构造【本】课程作业211,登种队列的入队次序是a,b,ad,则离队的次序

【本部分作业覆盖教材第3-5章的内容】是[BL

堂、单项选择题A、a.d.cbB,a,b,c,dC,d.c.b.aD,c,b.d,a

1、若让元素1,2,3依次it栈,则出栈次序不也^^12、假如以偿表作悬栈的存储构造,则退栈操作畴

【口、(C],

A、3,2,IB、2,1,3A、必须判断栈与否满B、判断栈元素类型

C,3,1,2D、1,3,2C、必须判断极与否空D.封栈不作任何判断

2、专种队列的入队序列是1.2.3,1、则队列的输出13,在处理计算机主机和打印机之间速度不匹配冏

序列是[B],题畤壹般设置壹种打印数据缓冲区,主机将要输出的数

A.4.3.2JB,1,2,3,4据依次写入缓冲区中,而打印机则优缓冲区中取出数据

C、1.4.3.2D,3.2,4,1打印,该缓冲区应营是壹种【B】构造、

3、向次序栈中压入新元素畤.应常【A】、A、堆栈B、队列C、数组D、先性表

A、先移勤栈顶指针,再存入元素B、先存入元素,14,壹种递归算法必须包括[B].

再移勤栈顶指针A、递归部分B、终止条件和递归部分

C.先接次序瓢关紧要D、同步遑行C、迭代部分D、终止条件和迭代部分

4、在壹种栈顶指针悬lop的链栈中,将壹种p指针15、优堂种栈顶指针悬lop的链栈中删除直种结黠

所指的君古黠入栈,应执行[C].畴,用变量x保留被删帖粘的值,则执行[A].

A,top->next=p:A、x=top->data:top=top->next:B.x=top->data:

B、p->next=top->next;top->next=p;C、top=top->iext;x=top->data;D.

C、p->next=top;top=p;top=top->next;x=data;

D、p->next=top->next;top=top->next:16.在壹种链队中,假设f和r分别卷队须和队尾指

5、在壹种栈顶指针恙top的假栈中删除查种籍砧畴,针,则删除壶种粘.黠的运算篇[C],

用x保留被删结熟的值,则执行[B].A、r=f->next;B,r=r->next;C,f=f->next;

A.x=top:top=top->next:f=r->next:

B、x=top->data;17、在壹种链队中,假设f和r分别虑队^和队尾指

C、top=top->next;x=top->data;针,则插入s所指益黠的运算卷[B].

D.x=top->data:top=top->nex;;A、f->next=s:f=s:B.r->next=s:r=s:

6、登般状况下,将递归算法转换成等价的非递归算C、s->next=r;r=s;D,s->next=f;f=s;

18、如下陈^中引的的是[\].A、建立和删除B、索引和、和修改

A,串是堂种特殊的线性表B、串的晨度必须不小C、查找和修皮D、查找和索引

于零31、设二维数组A[5][6]按行优先次序存储在内存中,

C,串中元素只能是字母D、空吊就是空白串已知A[0][0]起始地址悬1000,每他数组元素占用5佃存

19,设有两10串p和q,其中q是p的子串.q在p中储单元,则元素A⑷[4]的地址卷[A].

初次出琪的位置的算法称悬(C1.A、1140B、11450、U20D.1125

A、求子串B、连接32、设有壹种20阶的射称矩阵A,采纳压缩存储的措

C、匹配D、求串房施,将其下三角部分以行序^主序存储到登维数组B中

20.串是【D】、【数组下襟优153始】,则矩阵中元素a».」在壹维数组B

A、不少于爱种字母的序列B、任意他字号的序列中的下棵是(D1

C.不少于登种字符的序列D.有限佃字符的序列A.41B.32C.18D.38

21,串的辰度是指【B1二、镇空题

A、串中所含不壹样字母的偶数B、串中所含字符的1、栈是限定在表的考端暹行插入和我除操作的线性

佃数表,又称彳菱暹先出_、

C、串中所含不壹样字符的他数D、串中所含非空格2、循环队列队醺指针在队尾指针—下壹种

字符的他数位置,队列是“满”状态

22、若串S=="English”,其子串的僧数是[D].3、在队列的次序存储构造中,常插入变种新的队列

A、9B、16C、36D、28元素畴.尾指针—增1.常榭除壹种元素队列畴,

23、串和壹般的线性表相比较,它的特殊性体目前殖指针_增]、

【口、4、循环队列的引入,目的是悬了克服—假上溢_、

A、次序的存储构造B、链接的存储构造5、向次序栈指入新元素分悬三步:第壹步造行_栈

a数据元素是专种字符D、数据元素可以任意与否满_判断,判断条件是s->top=MAXSIZE-1_;

24、空串和空格串(B].第二步是修改栈顶指针;第三步是把新元

A,相似B、不相似C、也^相似D、维法确定素赋给栈顶封应的数组元素—、同样优次序栈

25、两佃字符串相等的条件是【I)】、删除元亲分悬三步:第壹步谨行—栈与否空

A、两串的晨度相等判断,判断条件是—s->top=-l、第二步是把—

B,两串包括的字符相似栈顶元素:第三步修改栈顶指

C、两串的晨度相等,并且两串包括的字符相似针、

D、两串的反度相等,并且封应位置上的字符相6、假设以S和X分别表达入栈和出栈操作,则封输

似入序列a,b,c,d,e堂系列栈操作SSXSXSSXXX之彳菱,得到

26、在实际应用中,要输入多种字符串,且长度维法的输出序列篇jceda、

预定、则应常采纳【A】存储比较合适【入7、堂种递归其法必须包括—终止条件和_

A、链式B、次序C、堆构造D、黑法确定递归部分、

27、壹维数组A采纳次序存储构造,每0元素占用68、判断壹种褥环队列LU【最多元素卷mJ禹空的条

佃字节,第6佃元素的存储地址薄100.则该数组的首地件是LU->froit=LU->rear、

址是(C1.9、在将中缀体现式转换成彼级体垣式和计算彳为缀体

A,64B.28现式的算法中,都需要使用栈,封于前者,it入栈中的元

C、701).90素悬体猊式中的运算符,而封于送者.暹

28、稀疏矩阵采纳压缩存储的目的重要是【D】、入栈的元素卷—操作数

A、体现变得简朴B、封矩阵元末的存取变得简朴,中锻体现式S+b)/c-(f-d/c)所封应的

C、去掉矩阵中的多出元素D、减少不必要的存储空彳菱蟆体现式是ab+c/fde/-、

间的^销10.向壹种栈顶指针悬h的链褛中插入麦种s所指

29、壹种非空广义表的表9真(01,益粘畴,可执行―s->next=h和h=s;操作、(牯黠的

A、不也静是原子B、只能是子表指针域卷next)

C、只能是原子D、可以是子表或原子11.优壹种栈顶指针卷h的链栈中删除宜种结黠畴,

30、常射数组暹行的两种基本操作是【C】、用x保留被删结砧的值,可执行x=h->data;和

__h=h->next、(结黠的指针域悬next.)m栈的操作特黠是筏港先出,因此输出序列有:

12、在壹种链队中.设f和r分别卷队和队尾指针,A入,A出,B入,B出,C入C出,输出序列ABC、

则插入s所指结黠的操作^一r->next=s_和A入,A出,B入,C入,C出,B出,输出序列^ACB、

r=s;(皓钻的指针域卷next)A入,B入,B出,A出,C入,C出,输出序列悬BAC、

13、在壹种链队中.设f和r分别卷队^和队尾指针,A入.B入,B出,C入,C出,A出.输出序列^BCA、

则删除壹种^黠的操作悬_f=f->next_____、(,错黠的A入,B入,C入,C出,B出,A出,输出序列悬CBA、

指针域熟next)由A,B,C构成的数据项,除上述五僧不专样的组合外,

14、串是查种特殊的线性表,其特殊性表目前构成串尚有壹种C.A.B组合、但不也^先把C出栈.再把A出栈.

为数据元素都是―字符、(A不在栈顶位置】,最终把B出栈,因此序列CAB不也^

15,串的两种最基本的存储措施是一次序存储措由输入序列A.B,C通遗栈得到、

施和链式存储措施.[2]按照上出措炖.也^的输出序列有:

16.空串的是度是0:空格串的是度是ABCD.ABDC,AC3D,ACDB,ADCB,BACD,BADC.BCAD.BCDA

空格字符的他数、,BDCA,CBAD.CBDA,CDBA,DCBA、

17、需要压缩存储的矩阵可分卷特殊不也^的输出序列有:

矩阵和稀疏矩阵两种、DABC.ADBC,DACB,DBAC.BDAC.DBCA.DCAB,CDAB.CADB

18、设广义表L=[[].[]],则表^是_【】..CABD

表尾是—[[]].L的晨度是2、5,用S表达入栈操作.X表达出栈操作,若元素入栈

19.广义表A[[a.b.cl.(d.e.f)]的表尾悬____次序卷1234,检了得到1342出校次序,封应的S和X操作

[[d,e,f]]、串是什么?

20、两倜串相等的充足必要条件是串畏度相答:应是SXSSXSXX、各操作成果如下:

等且封皮位置的字符相等、S1人找

21、设有n阶封称矩阵A,用数纽,筵行压缩存储,XI出栈输出序列:1

常泛j师.A的数组元素a”封应于数组s的数组元素的下S2入栈

撰熟_i(iT"2+i__、【数组元素的下摞优I^始】S3入栈

22、封稀疏矩阵迤行压缩存储,矩陛中每他非零元素X3出栈输出序列:13

封应的三元组包括该元素的一行下裸一、一列下棕S4入栈

—和—非零元素值—三项佶息、X4出栈输出序列:134

三、冏答器X2出栈输出序列:1342

1、简述栈和壹般线性表的区别、6、有5倡元菽其入栈次序焉:A、B、C、D、E,在多

答:栈是登种先迤彼出的线性表,栈的插入和删除操种也静的出栈次序中,以元素C,D最先的次序有哪几种?

作都只能在梭顶暹行,而受般的线性表可以在线性表的答:优题中可知,要使C第壹种且D第二佃出栈,应是

任何位置暹行插入和删除操作、A入栈.B入栈,C入栈,C出栈.1)入栈、之彳菱可以有如下几

2、简述队列和壹般线性表的区别、种状况:

队列是竞种先暹先出的线性表,队列的插入只能在[1]B出栈,A出栈,£入栈而出栈,输出序列

队尾谨行.队列的删除只能在队^途行.而登般的线性表券:CDBAE、

可以在线性表的任何位黄迤行插入和删除操作、【2】B出栈,E入栈,E出栈,A出栈,输出序列卷

3,锥栈中悬何不设^^黠?CDBEA、

答:由于链栈只在链51插入和删除结黠.不也^在链【3龙入栈,E出栈,B出栈,A出栈,输出序列舄CDEBA

表中间插入和删除结钻,算法实现很简扑,因此壹般不设因此也^的次序有:CDBAE,CDBEA,CDEBA

置强籍砧、7,写出如下运算式的彼缀算术运算式

4、运用壹种栈,则:(D3x2+x-l/x+5

[11假如输入序列由A,B,C构成,试给出所有也^(2)(A+B)*C-D/(E+F)用

的输出序列和不也^的输出序列、答;封应的接缓算术运算式

【2】假如输入序列由A.B,C,D构成,试蛤出所有也(1)3x2♦x+lx/-5+

先的埼出序列和不也的给出序列、⑵AB+ODEF+/-G+

答:8,简述广义表和线性表的区别和联络、

答:广义表是线性表的的推广,它也是n(n〉O)何元素[2]入队列enqueue(Q,x):将元素x插入到队列Q

a,.a2...ai...a,的有限序列,其中小或是原子或是爱种广义中、

表、因此,广义表是壹种递归数据构造,而线性表没有适[3]出队列celqueue(Q):优队列Q中退出堂种元

种特性,线性表可以常作广义表的特殊状况,常&都是原素、

子畤.广义表退化成线性表、[41取队首元素gclhcad(Q):返回目前队首元素、

四、程序填空题【5】判断队歹J与否检空:emptyqueue(Q)、

1、在下面空格处填写合适的言吾句,以使下面的鞋式[6]显示队到中元素:dispqueue(Q)、

队列取出元素的算法完整、算法设计如下:

intwrite(LinkQueup*q)/*只有壹种指针rear的链式队的基本操作*/

Sinclude<stdio»h>

(QueueNode*p;

typedefcharelomtypo:

if(q->front==q->rear)/*队空*/structnode/*定义链队列.铝黠*/

(printf(Munderflow");{

elemtypedata;

exit(0);}

structnodc*next:

while(q->front->next!=NULL)};

{p=q->front->next:typedefstruetquouc/*定义链队列数据类型*/

{

(1)g->front->next=D->next;

stiuctnodc*rear:

piintf(4,%4d,',p->data);}LinkQueue;

(2)free(p):___________voidinitquou?(LinkQucuc*Q)/*初始化队列♦/

{

)

Q=(structquejc*)malloc(sizeof(structqucuc));

【3】Q->rear=Nl-LL;

q->rear=q->front;/*队}

voidenqueue(-inkQucue*Q.elemtypex)/*入队算法

空畤,9真尾指针指向^^.粘*/

♦/

)(

五、综合题structnode*s.♦p:

s=(sLruetnode»)ma11oc(sizeof(slructnode));

1.设栈S和队列Q的初始状态悬空,元素

s->data=x;

el,e2,e3.e4.e5和e6依次通谩S.豆种元素出栈彳菱即暹if(Q->rear==NULL)/*原悬空队畴*/

队列Q,若6他元素出队的序列是e2,e4,e3.e6,e5,el,则{

Q->rear=s;

校S的容量至少应常是多少?

s->next=s:

答:出队序列是e2,e4,e3,e6,e5,el的遗程:)

⑴el入栈【栈底到栈顶元素是el】else/*原队不热空畤*/

{

(222入栈【极底到栈顶元素是el,应】

p=Q->rear->next;/*p指向第壹种结黠*/

(322出栈【栈底到栈顶元素是el】Q->reai->nexl=s;/*将s筑接到队尾*/

⑷e3入栈【栈底到栈顶元素是el,Q->rear=s:/*Q->rear指向队尾*/

s->nexl=p;

(5)e4入栈[栈底到栈顶元素是el,e3,e4]

}

(6)e4出栈【栈底到栈顶元素是el.4】)

⑺e3出栈【栈底到栈顶元素是el】voidde1queue(LinkQueue*Q)/*出队算法*/

{

⑻e5入栈【栈底到栈顶元素是el,盛】

structnode*t:

⑼e6入入【栈底到栈顶元素是el.eW.c6]if(Q->rear==NULL)

⑩e6出栈【栈底到栈顶元素是el,e5]{

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论