第 1 章绪论练习题答案
判断题
1. 数据元素是数据的最小单位。( × )
2. 记录是数据处理的最小单位。 (× )
3. 数据的逻辑结构是指数据的各数据项之间的逻辑关系。(× )
4.算法的优劣与算法描述语言无关,但与所用计算机有关。(× )
5.健壮的算法不会因非法的输入数据而出现莫名其妙的状态。(√ )
6.数据的物理结构是指数据在计算机内的实际存储形式。(√ )
7. 数据结构的抽象操作的定义与具体实现有关。(× )
第 2 章线性表练习题答案
一、填空
1. 向一个长度为 n 的向量的第 i 个元素(1≤i≤n+1)之前插入一个元素时,需向后移动 n-i+1 个元素。
2. 向一个长度为 n 的向量中删除第 i 个元素(1≤i≤n)时,需向前移动 n-i 个元素。
3. 在顺序表中访问任意一结点的时间复杂度均为 O(1) ,因此,顺序表也称为 随机存取 的数据结
构。
4. 在单链表中,除了首元结点外,任一结点的存储位置由 其直接前驱结点的链域的值 指示。
5.对于一个具有 n 个结点的单链表,在已知的结点*p 后插入一个新结点的时间复杂度为 O(1) ,在给
定值为 x 的结点后插入一个新结点的时间复杂度为 O(n) 。
二、判断正误
( × )1. 链表的每个结点中都恰好包含一个指针。
答:错误。链表中的结点可含多个指针域,分别存放多个指针。例如,双向链表中的结点可以含有两个指针
域,分别存放指向其直接前趋和直接后继结点的指针。
( × )2. 链表的物理存储结构具有同链表一样的顺序。错,链表的存储结构特点是无序,而链表的示意图有
序。
( × )3. 链表的删除算法很简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向
前移动。错,链表的结点不会移动,只是指针内容改变。
( × )4. 线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。
错,混淆了逻辑结构与物理结构,链表也是线性表!且即使是顺序表,也能存放记录型数据。
( × )5. 顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。
错,正好说反了。顺序表才适合随机存取,链表恰恰适于“顺藤摸瓜”
( × )6. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。
错,前一半正确,但后一半说法错误,那是链式存储的优点。顺序存储方式插入、删除运算效率较低,
在表长为 n 的顺序表中,插入和删除一个数据元素,平均需移动表长一半个数的数据元素。
( × )7. 线性表在物理存储空间中也一定是连续的。
错,线性表有两种存储方式,顺序存储和链式存储。后者不要求连续存放。
( × )8. 线性表在顺序存储时,逻辑上相邻的元素未必在存储的物理位置次序上相邻。
错误。线性表有两种存储方式,在顺序存储时,逻辑上相邻的元素在存储的物理位置次序上也相邻。