数据结构( C语言版) (第2版)
课后习题答案
李冬梅
.3
目 录
第 1 章 绪论 1
第 2 章 线性表 5
第 3 章 栈和队列 14
第 4 章 串、数组和广义表 27
第 5 章 树和二叉树 34
第 6 章 图 44
第 7 章 查找 55
第 8 章 排序 66
II
目 录
第 1 章 绪论 1
第 2 章 线性表 5
第 3 章 栈和队列 14
第 4 章 串、数组和广义表 27
第 5 章 树和二叉树 34
第 6 章 图 44
第 7 章 查找 55
第 8 章 排序 66
II
答案:
(1)集合结构
数据元素之间除了“属于同一集合”的关系外,别无其他关系。例如,确定一名学生是
否为班级成员,只需将班级看做一个集合结构。
(2)线性结构
数据元素之间存在一对一的关系。例如,将学生信息数据按照其入学报到的时间先后顺
序进行排列,将组成一个线性结构。
(3)树结构
数据元素之间存在一对多的关系。例如,在班级的管理体系中,班长管理多个组长,每
位组长管理多名组员,从而构成树形结构。
(4 )图结构或网状结构
数据元素之间存在多对多的关系。例如,多位同学之间的朋友关系,任何两位同学都可
以是朋友,从而构成图形结构或网状结构。
其中树结构和图结构都属于非线性结构。
四类基本逻辑结构关系图
4 .存储结构由哪两种基本的存储方法实现?
答案:
(1)顺序存储结构
顺序存储结构是借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系,通常
借助程序设计语言的数组类型来描述。
(2)链式存储结构
顺序存储结构要求所有的元素依次存放在一片连续的存储空间中,而链式存储结构,无
需占用一整块存储空间。但为了表示结点之间的关系,需要给每个结点附加指针字段,用于
存放后继元素的存储地址。所以链式存储结构通常借助于程序设计语言的指针类型来描述。
5.选择题
(1)在数据结构中,从逻辑上可以把数据结构分成( )。
A .动态结构和静态结构 B .紧凑结构和非紧凑结构
2
答案: