基本信息
文件名称:数据结构 课后习题答案汇总(张惠涛)第1--9章 .docx
文件大小:61.81 KB
总页数:47 页
更新时间:2025-06-06
总字数:约2.19万字
文档摘要

一、填空题

1.数据结构被形式地定义为(D,R),其中D是数据元素的有限集合,R是D上的关系的有限集合。

(解析:D代表数据元素的集合,R代表元素间的关系集合。)

2.数据结构包括数据的逻辑结构、数据的存储结构和数据的运算这三个方面的内容。

(解析:数据结构涵盖逻辑结构(数据间的关系)、存储结构(物理存储方式)和运算(相关操作)。)

3.数据结构按逻辑结构可分为四大类,它们分别是集合、线性结构、树形结构、图状结构。

(解析:逻辑结构的分类基于元素间的关系类型。)

4.线性结构中元素之间存在一对一关系,树形结构中元素之间存在一对多关系,图形结构中元素之间存在多对多关系。

(解析:线性结构如数组、链表;树形结构如二叉树;图形结构如网络图。)

5.在线性结构中,第一个结点没有前驱结点,其余每个结点有且只有1个前驱结点;最后一个结点没有后续结点,其余每个结点有且只有1个后续结点。

(解析:线性结构严格遵循顺序,首尾结点无前驱或后继。)

6.在树形结构中,树根结点没有前驱结点,其余每个结点有且只有1个前驱结点;叶子结点没有后继结点,其余每个结点的后续结点数可以任意多个。

(解析:树根无父结点(前驱),叶子无子结点(后继),非叶子结点可有多个子结点(后继)。)

7.在图形结构中,每个结点的前驱结点数和后续结点数可以任意多个。

(解析:图结构元素间关系自由,前驱和后继数量无限制。)

8.数据的存储结构可用四种基本的存储方法表示,它们分别是顺序存储、链式存储、索引存储、哈希存储。

(解析:存储方法包括顺序(连续内存)、链式(指针链接)、索引(索引表)、散列(哈希函数)。)

9.一个算法的效率可分为时间效率和空间效率。

(解析:算法效率主要从时间复杂度和空间复杂度衡量。)

10.数据结构是研讨数据的逻辑结构和存储结构,以及它们之间的相互关系,并对与这种结构定义相应的操作,设计出相应的算法。

(解析:数据结构研究数据的逻辑关系、物理存储及操作算法。)

11.下面程序段中带下划线的语句的执行次数的数量级是O(nlogn)。

plaintext

i=1;

while(in)

{for(j=1;j=n;j++)//语法修正:逗号改为分号

x=x+1;//带下划线的语句

i=i*2;

}

(解析:外层while循环执行次数为O(logn)(因i每次乘以2),内层for循环执行次数为O(n),故总次数为O(nlogn),数量级为O(nlogn)。)

二、选择题

C)数据元素之间的关系

解析:存储数据时,除了元素值本身,还需存储元素间的逻辑关系(如指针、索引),这是数据结构的核心。

C)逻辑

解析:逻辑结构描述数据元素间的抽象关系(如线性、树形),与计算机无关;存储结构和物理结构依赖于具体实现。

C)分析算法的效率以求改进

解析:算法分析的核心是评估时间/空间效率,优化算法性能。

B)可行性、确定性和有穷性

解析:算法五大特性:输入、输出、可行性(能执行)、确定性(步骤明确)、有穷性(执行终止)。

B.(1),(2),(4)

解析:

(1)错误:原地工作指O(1)额外空间,并非完全不需要空间。

(2)错误:O(n)与O(2n)等价(常数系数可忽略),时间复杂度相同。

(3)正确:时间复杂度通常指最坏情况的上界。

(4)错误:语言级别与执行效率无直接关联(如C语言高级但高效)。

C)线性结构、非线性结构

解析:逻辑结构分为线性结构(顺序关系,如链表)和非线性结构(树、图等)。

A)一定连续

解析:连续存储(如数组)要求物理地址严格连续,这是其实现的基础特性。

三、判断题

数据元素是数据的最小单位。

答案:×

解析:数据的最小单位是数据项,数据元素是由数据项组成的(例如:一条记录是数据元素,其中的字段是数据项)。

记录是数据处理的最小单位。

答案:×

解析:数据处理的最小单位是数据项,记录由多个数据项组成(例如:一条学生记录包含学号、姓名等数据项)。

数据的逻辑结构是指数据的各数据项之间的逻辑关系。

答案:×

解析:逻辑结构描述数据元素之间的逻辑关系,而非数据项之间的关系(例如:线性结构中元素的先后关系)。

算法的优劣与算法描述语言无关,但与所用计算机有关。

答案:×

解析:算法优劣取决于时间/空间复杂度,与描述语言和计算机无关(复杂度分析是数学抽象)。

健壮的算法不会因非法的输入数据而出现莫名其妙的状态。

答案:√

解析:健壮性指算法对非法输入有容错处理(如返回错误提示),避免崩溃或不可控状态。

算法用高级语言描述后就是程序。

答案:×

解析:算法是解决问题的步骤,程序是算法的具体实现