第3章栈、队列。
1. 填空
1) 设有一个空栈,栈顶指针为1000h,现有输入序列为, 经过push,push,pop,push,pop,push,push后,输出序列是( )栈顶指针为( )
2)栈通常采用的两种存储结构是( )其判定栈空的条件分别是( )判定栈满的条件分别是( )
3)( 可作为实现递归函数调用的一种数据结构。
4) 栈和队列是两种特殊的线性表,栈的操作特性是( )队列的操作特性是( )栈和队列的主要区别在于( )
5)循环队列的引入是为了克服( )
6) 数组q[n]用来表示一个循环队列,front为队头元素的前一个位置,rear为队尾元素的位置,计算队列中元素个数的公式为( )
2. 选择题。
1)若一个栈的输入序列是1,2,3,…,n,输出序列的第一个元素是n,则第i个输出元素是( )
a 不确定 b n-i c n-i-1 d n-i+1
2) 设栈s和队列q的初始状态为空,元素e1、e2、e3、e4、e5、e6依次通过栈s,一个元素出栈后即进入队列q,若6个元素出队的顺序是e2、e4、e3、e6、e5、e1,则栈s的容量至少应该是( )
a 6 b 4 c 3 d 2
3)一个栈的入栈序列是1,2,3,4,5,则栈的不可能的输出序列是( )
a 54321 b 45321 c 43512 d 12345
4)设计一个判别表达式中左右括号是否配对的算法,采用( )数据结构最佳。
a 顺序表 b 栈 c 队列 d 链表。
5)在解决计算机主机与打印机之间速度不匹配问题时通常设置一个打印缓冲区,该缓冲区应该是一个( )结构。
a 栈 b队列 c 数组 d线性表。
6)一个队列的入队顺序是1,2,3,4,则队列的输出顺序是( )
a 4321 b 1234 c 1432 d 3241
7) 栈和队列的主要区别在于( )
a 它们的逻辑结构不一样 b 它们的存储结构不一样。
c 所包含的运算不一样 d 插入、删除运算的限定不一样。
3. 判断题。
1)栈可以作为实现过程调用的一种数据结构。
2) 在栈满的情况下不能做进栈操作,否则将产生“上溢”。
3)在循环队列中,front指向队头元素的前一个位置,rear指向队尾元素的位置,则队满的条件是front=rear。
4. 设有一个栈,元素进栈的次序为a,b,c,d,e,能否得到如下出栈序列,若能,请写出操作序列,若不能,请说明原因。
c,e,a,b,d
c,b,a,d,e
5. 举例说明顺序队列的“假溢出”现象。
6. 在操作序列push(1)、push(2)、pop、push(5)、push(7)、pop、push(6)之后,栈顶元素和栈底元素分别是什么?(push(k)表示整数k入栈,pop表示栈顶元素出栈。
)7. 在操作序列enqueue(1)、 enqueue(3)、 dequeue、enqueue(5)、enqueue(7)、dequeue、enqueue(9)之后,队头元素和队尾元素分别是什么?(enqueue(k)表示整数k入队,dequeue表示队头元素出队)。
8. 算法设计。
1) 假设以不带头结点的循环链表表示队列,并且只设一个指针指向队尾结点,但不设头指针。试设计相应的入队和出队的算法。(实验报告选择题目)
学习自测及答案
1.在一个具有n个单元的顺序栈中,假定以地址低端(即下标为0的单元)作为栈底,以top作为栈顶指针,当出栈时,top的变化为( )
a 不变 b top=0; c top=top-1; d top=top+1;
2.一个栈的入栈序列是a, b, c, d, e,则栈的不可能的出栈序列是( )
a edcba b cdeba c debca d abcde
3.从栈顶指针为top的链栈中删除一个结点,用x保存被删除结点的值,则执行( )
a x=top; top=top->next; b x=top->data;
c top=top->next; x=top->data; d x=top->data; top=top->next;
4.对于栈和队列,无论它们采用顺序存储结构还是链接存储结构,进行插入和删除操作的时间复杂度都是( )
5.简述队列和栈这两种数据结构的相同点和不同点。
6. 设计算法把一个十进制整数转换为二至九进制之间的任一进制数输出。(实验报告选择题目)
7.假设一个算术表达式中可以包含三种括号:圆括号“(”和“)”方括号“[”和“]”以及花括号“”,且这三种括号可按任意的次序嵌套使用。编写算法判断给定表达式中所含括号是否配对出现。
(实验报告选择题目)
数据结构作业第2章
第2章线性表。1.填空。在顺序表中,等概率情况下,插入和删除一个元素平均需移动 个元素,具体移动元素的个数与 和 有关。顺序表中第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的存储地址是 设单链表中指针p 指向结点a,若要删除a的后继结点 假设a存在后继结点 则需修改指针的操作为 单...
数据结构第01次作业
1.1 使用某种软件工具绘制教材上图1.7中函数在标准坐标系第1象限的图像。具体要求如下 1 说明使用的软件工具名称与版本 2 每个函数选取20个自变量,并说明你选取的缘由 3 说明你计算每个函数的函数值的方式 4 叙述函数图像绘制过程 5 在最终给出的图像之中仅仅保留标准坐标系第1象限的图像,你是...
数据结构作业
数据结构作业 下周三交。题目描述 二叉排序树,也称为二叉查找树。可以是一颗空树,也可以是一颗具有如下特性的非空二叉树 1.若左子树非空,则左子树上所有节点关键字值均不大于根节点的关键字值 2.若右子树非空,则右子树上所有节点关键字值均不小于根节点的关键字值 3.左 右子树本身也是一颗二叉排序树。现在...