数据结构第三章栈和队列练习及答案

  • 格式:docx
  • 大小:14.92 KB
  • 文档页数:3

A 、 ST->top==0 B、 ST->top==-1

C、 ST->top!=m0 、选择题

1 、栈中存取数据的原则()

A 、先进先出 B、先进后出 C、后进后出 D 、随意进出

2、队列中存取数据的原则()

A 、先进先出 B、后进先出 C、先进后出 D 、随意进出

3 、插入和删除只能在一端进行的线性表,称为()

A 、队列 B、循环队列 C、栈 D 、循环栈

4 、在栈中, 出栈操作的时间复杂度为()

A、 O ( 1 ) B、 O ( log 2n ) C、 O ( n ) D、 O(n2)

5 、设长度为 n 的链队列用单循环链表表示, 若只设头指针, 则入队操作的时间复杂度为 ()

A、 O ( 1 ) B、 O ( log 2n ) C、 O ( n ) D、 O(n2)

6 、设长度为 n 的链队列用单循环链表表示, 若只设头指针, 则出队操作的时间复杂度为 ()

A、 O ( 1 ) B、 O ( log 2n ) C、 O ( n ) D、 O(n2)

7 、一个线性表的第一个元素的存储地址是 100 ,每个元素的长度是 2,则第 5 个元素的地

址是()

A、110 B、 108 C、 100 D 、 120

8 、一个栈的入栈序列是 a,b,c,d,e ,则栈的不可能的输出序列是()

A、edcba B、 decba C 、 dceab D、 abcde

9、 若已知一个栈的入栈序列是 1 , ,3 ,……,n,其输出序列是 p1,p2,p3,……,pn,若p仁n ,

则 pi 为()

A、 i B、 n=i C、 n-i+1 D 、不确定

10、 判断一个栈ST (最多元素mO )为空的条件是() A 、 ST->top!=0 B、 ST->top==0 C、 ST->top!=m0

A 、 QU.front==QU.rear B 、 QU.front!=QU.rear

ST->top==m0

11、判断一个栈ST (最多元素m0 )为满的条件是()

ST->top==m0

12、判断一个循环队列 QU (最多元素为 m0 )为空的条件是()

C、 QU.front==(QU.rear+1)%m0 D 、 QU.front!=(QU.rear+1)%m0

13、判断一个循环队列 QU (最多元素为 m0 )为满的条件是()

A 、 QU.front==QU.rear B、 QU.front!=QU.rear

C、 QU.front==(QU.rear+1)%m0 D 、 QU.front!=(QU.rear+1)%m0

14 、循环队列用数组存放其元素值 A[0 , m-1] ,已知其头尾指针分别是 rear 和 front ,则 当前队列的元素个数是()

A 、 (rear-front+m)%m B、 rear-front+1 C、 rear-front-1 D 、

rear-front

15 、栈和队列的共同特点是()

A、都是先进后出 B、都是先进先出 C、只允许在端点处插入和删除 D、没有共同点

二、填空题

1 、设长度为 n 的链队列用单循环链表表示,若只设头指针,则入队和出队操作的时间复杂

度分别为(0(N))和(0(1));若又设尾指针,则入队和出队操作的时间复杂度分别为 (0(1))

和(0(1))。

2、线性表、栈和队列均是( 线性 )结构,可以在线性表的( N+1 )位置上插入和删除元素; 对于栈只能在 ( 第 N+1 )插入和和在 (第 N )位置上删除元素; 对于队列只能在 (第 N+1 )后进先出 )。

先进先出 )。 位置上插入元素和在( 第 1 )位置上删除元素。

3、栈中存取数据遵从的原则是(

4、队列中存取数据遵从的原则是(