一个循环队列Q的存储空间大小为M,其队头和队尾指针分别为front和rear,则循环队列中元素的个数为:()。

  • A+

答案查询网公众号已于近期上线啦

除基本的文字搜题外,准备上线语音搜题和拍照搜题功能!微信关注公众号【答案查询网】或扫描下方二维码即可体验。

(1)【◆题库问题◆】:[填空题] 一个循环队列Q的存储空间大小为M,其队头和队尾指针分别为front和rear,则循环队列中元素个数为:()。

【◆参考答案◆】:(rear-front+M)%M

(2)【◆题库问题◆】:[问答题] 编写程序,将若干整数从键盘输入,以单链表形式存储起来,然后计算单链表中结点的个数(其中指针P指向该链表的第一个结点)。

【◆参考答案◆】:编写C程序如下(已上机通过):全局变量及函数提前说明:---------------------------------#include#includetypedefstructliuyu{intdata;structliuyu*link;}test;liuyu*p,*q,*r,*head;intm=sizeof(test);voidmain()/*第一步,从键盘输入整数,不断添加到链表*/{inti;head=(test*)malloc(m);/*m=sizeof(test);*/p=head;i=0;while(i!=-9999){printf("/ninputaninteger[stopby’-9999’]:");scanf("%d",&i);p->data=i;/*inputdataissaved*/p->link=(test*)malloc(m);/*m=sizeof(test));*/q=p;p=p->link;}q->link=NULL;/*原先用p->link=NULL似乎太晚!*/p=head;i=0;/*统计链表结点的个数并打印出来*/while(p->link!=NULL){printf("%d",p->datA.;p=p->link;i++;}printf("
nodenumber=%d
",i-1);/*结点的个数不包括-9999*/}

(3)【◆题库问题◆】:[名词解释] 简单回路

【◆参考答案◆】:
除了第一个顶点和最后一个顶点之外,其余顶点均不相同的回路称为简单回路。

(4)【◆题库问题◆】:[单选] 若REPLACE(S,S1,S2)表示用字符串S2替换字符串S中的子串S1的操作,则对于S=“Beijing&Nanjing”,S1=“Beijing”,S2=“Shanghai”,REPLACE(S,S1,S2)=()。
A."Nanjing&Shanghai"
B."Nanjing&Nanjing"
C."ShanghaiNanjing"
D."Shanghai&Nanjing"

【◆参考答案◆】:D

(5)【◆题库问题◆】:[单选] 与单向链表相比,使用双向链表存储数据,其优点是可以()。
A.提高检索速度
B.很方便地插入和删除数据
C.节约存储空间
D.很快回收存储空间

【◆参考答案◆】:B

(6)【◆题库问题◆】:[填空题] n个顶点e条边的图,若采用邻接表存储,则空间复杂度为()。

【◆参考答案◆】:O(n+e)

(7)【◆题库问题◆】:[单选] 解决散列法中出现的冲突问题常采用的方法是()。
A.数字分析法、除余法、平方取中法
B.数字分析法、除余法、线性探测法
C.数字分析法、线性探测法、多重散列法
D.线性探测法、多重散列法、链地址法

【◆参考答案◆】:D

(8)【◆题库问题◆】:[单选] 设G1=(V1,E1)和G2=(V2,E2)为两个图,如果V1V2,E1E2则称()。
A.G1是G2的子图
B.G2是G1的子图
C.G1是G2的连通分量
D.G2是G1的连通分量

【◆参考答案◆】:A

(9)【◆题库问题◆】:[判断题] 集合与线性表的区别在于是否按关键字排序
A.正确
B.错误

【◆参考答案◆】:正确

(10)【◆题库问题◆】:[单选] 若已知一个栈的进栈序列是1,2,3,,n,其输出序列为p1,p2,p3,„,pn,若p1=n,则pi为()。
A.i
B.n-i
C.n-i+1
D.不确定

【◆参考答案◆】:C

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: