第一篇 基础实验 2
第1章 准备实验 2
1.1 C语言实验 2
1.2 拓展训练 16
第2章 线性表 17
2.1 线性表的顺序表示和实现 17
2.2 线性表的链式表示和实现 26
2.3 拓展训练 35
第3章 栈与队列 36
3.1 栈的顺序表示和实现 36
3.2 队列的链式表示和实现 43
3.3 队列的顺序表示和实现 50
3.4 拓展训练 57
第4章 串 58
4.1 串的定长顺序存储表示和实现 58
4.2 拓展训练 68
第5章 数组和广义表 69
5.1 数组的顺序存储和实现 69
5.2 稀疏矩阵三元组顺序表存储和实现 76
5.3 广义表的表示和实现 85
5.4 拓展训练 92
第6章 树和二叉树 93
6.1 二叉树的链式存储和实现 93
6.2 拓展训练 100
第7章 图 101
7.1 图的邻接表表示及其基本操作 101
7.2 拓展训练 117
第8章 查找 118
8.1 顺序查找、二分查找、二叉排序树查找的实现 118
8.2 拓展训练 127
第9章 内部排序 128
9.1 插入与交换排序操作 128
9.2 选择排序与归并排序操作 135
9.3 链式基数排序 143
9.4 课外训练 150
第二篇 应用实训项目 153
应用实训项目一 一元多项式加、减、乘、除运算的实现 153
应用实训项目二 迷宫问题实现 164
应用实训项目三 舞伴搭配问题 170
应用实训项目四 压缩软件实现 177
应用实训项目五 校园导游咨询 187
应用实训项目六 散列表的设计与实现 193
应用实训项目七 简单文本编辑器设计与实现 202
应用实训项目八 图书馆书目检索 214
应用实训项目九 拓扑排序 223
应用实训项目十 关键路径 240
第三篇 课程设计 245
课程设计过程简介 245
数据结构课程设计实施方案 250
课程设计一 线性表 252
1.1 通讯录管理系统 252
1.2 学生成绩管理系统(单链表) 257
1.3 课程设计项目 262
课程设计二 栈和队列 267
2.1 停车场管理系统 267
2.2 课程设计项目 270
课程设计三 串的应用 273
3.1 文本文件的检索 273
3.2 文本文件单词的检索与计数 274
3.3 课程设计项目 276
课程设计四 树型结构的应用 278
4.1 压缩软件设计 278
4.2 课程设计项目 280
课程设计五 图结构的应用 281
5.1 交通咨询系统 281
5.2 计算机专业教学计划编制问题 284
5.3 课程设计项目 286
课程设计六 排序与查找 288
6.1 航班信息的查询与检索 288
6.2 课程设计项目 290
课程设计七 文件信息管理系统 294
7.1 图书管理信息系统的设计与实现 294
7.2 课程设计项目 302