当前位置:首页 > (完整word版)数据结构练习题
第一章
? 判断题(一)
1. 数据元素是数据最小单位。错 2. 数据对象就是一组数据元素的集合。错
3. 任何数据结构都具备三个基本运算:插入、删除和查找。错 4. 数据对象是由有限个类型相同的数据元素构成的。对 5. 数据的逻辑结构与各数据元素在计算机中如何存储有关。错 6. 如果数据元素值发生改变,则数据的逻辑结构也随之改变。错 7. 逻辑结构相同的数据,可以采用多种不同的存储方法。对 8. 逻辑结构不相同的数据,必须采用不同的存储方法来储存。错 9. 数据的逻辑结构是指数据元素的各数据项之间的逻辑关系。错 ? 判断题(二)
1. 顺序存储方式只能用于存储线性结构。错 2. 数据元素是数据最小的单位。错
3. 数据结构是带有结构的数据元素的集合。对 4. 数据的逻辑结构是指各数据元素之间的逻辑关系。对
5. 数据结构、数据元素、数据项在计算机中的表示分别称为存储结构、节点和数据域。对
6. 数据的物理结构是指数据在计算机内的实际的存储形式。对
第二章
? 判断题一
1. 分配给单链表的内存单元地址必须是连续的。错
2. 与顺序表相比,在链表中顺序访问所有节点,其算法的效率比较低。错 3. 从长度为n的顺序表中删除任何一个元素,时间复杂度都是O(n)。错 4. 向顺序表中插入一个元素,平均要移动大约一半的元素。对 5. 凡是为空的单链表都是不含任何节点的。错
6. 如果单链表带有头结点,则插入操作永远不会改变头节点指针的值。对 7. 在循环单链表中,任何一个节点的指针域都不可能为空。对 ? 判断题二
1. 顺序存储方式的特点是存储密度大且插入、删除运算效率高。错 2. 线性表的顺序存储结构优于链式存储结构。错
3. 顺序存储结构属于静态结构而链式存储结构属于动态结构。对
4. 由于顺序存储结构要求连续的存储区域,所以再存储管理上不够灵活。对 5. 对于单链表来说,只有从头节点开始才能扫描表中全部节点。对 6. 对于循环单链表来说,从表中任一节点出发都能扫描整个链表。对 7. 双链表的特点是很容易找任一节点的前驱和后继。对
第三章
1. 栈底元素是不能删除的元素。错 2. 顺序栈中元素值的大小是有序的。错
3. 在n个元素连续进栈后,他们的出栈顺序和进栈顺序一定正好相反。对 4. 栈顶元素和栈底元素有可能是同一元素。对
5. 若s[m]表示顺序栈的存储空间,则对栈的进栈、出栈操作最多只能进行m次。错
6. 栈是一种对进栈、出栈操作总次数作了限制的线性表。错 7. 对顺序栈进行进栈、出栈操作,不涉及元素的前、后移动问题。对 8. 空栈没有栈顶指针。错
9. 环形队列中有多少元素,可以根据队首指针和队尾指针的值来计算。对 10. 无论是顺序队列,还是链式队列,插入、删除运算的时间复杂度都是O(1)。对
11. 队列若用不带头节点的非循环单链表来表示链式队列,则可以用“队首指针和队尾指针的值相等”作为空队标志。错 12. 栈和队列都是插入和删除操作受限的线性表。对
13. 栈和队列的存储方式既可以是顺序方式,也可以是链式方式。对 14. 环形队列也存在空间溢出的问题。对 15. 消除递归不一定需要使用栈。对,也可用迭代
第四、五、六章
? 判断题
1. KMP算法的最大特点是指示主串的指针不需回溯。对 2. 任何递归算法都有递归出口。对
3. 递归算法的执行效率比功能相同的非递归算法的执行效率高。错 4. 递归算法不能转换成对应的非递归算法。错 5. 稀疏矩阵的特点是矩阵中的元素较少。错 ? 简答题
1. 两个串相等的充分必要条件是什么?长度相同且对应位置字符相等
2. 二维数组A[0…3][0…3]的元素起始地址是LOC(A [0][0])=1000,一个元素占用内存单元为2,则LOC(A[3][2])为多少。(分别计算按行、列存储情况) 按行存储:1000+[(3-0)×4+(2-0)]×2=1028 按列存储:1000+[(2-0)×4+(3-0)]×2=1022
上机操作题
1. 顺序表:已知线性表(a1,a2,…an)按顺序结构存储且每个元素为不相等的整数。设计把所有奇数移到所有偶数前边的算法。(要求时间少,辅助空间少)。 2. 单链表:编写算法将带头节点的单链表中值重复的节点删除,使所得的链表中各节点值不同。
3. 栈和队列:编程实现用两个栈模拟一个队列的算法。 4. 递归:编写程序,用递归算法实现n个整数之和。
5. 稀疏矩阵:稀疏矩阵压缩存储只存放行号、列号和非零值,用三元组顺序表表示。请编写程序实现两个稀疏矩阵相加的算法。
共分享92篇相关文档