智慧树知到《算法与数据结构》章节测试答案
A.(rear-front+m)%m
B.rear-front+1
C.rear-front-1
D.rear-front
正确答案:(rear-front+m)%m
6、一个顺序栈S,其栈顶指针为top,则将元素e入栈的操作是()。(注:top指向待插入位置)
A.*S->top=e;S->top++
B.S->top++;*S->top=e
C.*S->top=e
D.S->top=e
正确答案:*S->top=e;S->top++
7、在解决计算机主机和打印机之间速度不匹配问题时,通常设置一个打印数据缓冲区,主机将要输出的数据依次写入该缓冲区,而打印机则从该缓冲区中取走数据打印。该缓冲区应该是一个()结构。
A.堆栈
B.队列
C.数组
D.线性表
正确答案:队列
8、当用大小为N的数组存储顺序循环队列时,该队列的最大长度为()。
A.N
B.N+1
C.N-1
D.N-2
正确答案:N-1
9、依次在初始为空的队列中插入元素a,b,c,d以后,紧接着做了两次删除操作,此时的队头元素是()。
A.a
B.b
C.c
D.d
正确答案:c
10、向一个栈顶指针为HS的链栈中插入一个s所指结点时,则执行()。(不带空的头结点)
A.HS->next=s
B.s->next= HS->next; HS->next=s
C.s->next= HS; HS= HS->next
D.s->next= HS; HS=s
正确答案:s->next= HS; HS=s
第四章单元测试
1、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a[1][1]为第一元素,其存储地址为1,每个元素占一个地址空间,则a[8][5]的地址为()。
A.13
B.33
C.18
D.40
正确答案:33
2、设有数组A[i,j],数组的每个元素长度为3字节,i的值为1 到8 ,j的值为1 到10,数组从内存首地址BA开始顺序存放,当用以列为主存放时,元素A[5,8]的存储首地址为()
A.BA+141
B.BA+180
C.BA+222
D.BA+225
正确答案:BA+180
3、将一个A[1..100,1..100]的三对角矩阵,按行优先存入一维数组B[1‥298]中,A中元素A[66][65](即该元素下标i=66,j=65),在B数组中的位置K为()。
A.198
B.195
C.197
D.193
正确答案:195
4、二维数组A的每个元素是由6个字符组成的串,其行下标i=0,1,…,8,列下标j=1,2,…,10。若A按行先存储,元素A[8,5]的起始地址与当A按列先存储时的元素()的起始地址相同。设每个字符占一个字节
A.8
B.5
C.3
D.10
正确答案:5
5、设二维数组A[1..m,1..n](即m行n列)按行存储在数组B[1..m*n]中,则二维数组元素A[i,j]在一维数组B中的下标为()
A.(i-1)*n+j
B.(i-1)*n+j-1
C.i*(j-1)
D.j*m+i-1
正确答案:(i-1)*n+j
6、有一个100*90的稀疏矩阵,非0元素有10个,设每个整型数占2字节,则用三元组表示该矩阵时,所需的字节数是()
A.60
B.66
C.18000
D.33
正确答案:66
7、设有两个串p和q,求q在p中首次出现的位置的运算称作()。