数据结构与算法项目化教程PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:杨文元编著
- 出 版 社:西安:西安电子科技大学出版社
- 出版年份:2011
- ISBN:9787560625393
- 页数:264 页
学习情境0 程序设计语言基础 1
0.1 任务一 开发环境 1
0.1.1 子任务1 下载开发软件 1
0.1.2 子任务2 JDK的安装和配置 2
0.1.3 子任务3 NetBeans IDE的安装和配置 4
0.1.4 子任务4 编写及运行程序 6
0.2 任务二 编写程序的基础 7
0.2.1 子任务1 创建随机数 8
0.2.2 子任务2 封装与修饰符 10
0.2.3 子任务3 Java程序编写规范 12
0.2.4 子任务4 方法的重载和覆盖 13
0.3 任务三 构建简单操作菜单 18
0.3.1 子任务1 输入/输出 18
0.3.2 子任务2 程序控制 20
0.3.3 子任务3 异常处理 26
0.4 任务四 图形界面与事件处理 29
0.4.1 子任务1 图形界面演示 29
0.4.2 子任务2 图形演示系统的构建过程 31
0.4.3 子任务3 按钮事件处理 32
0.4.4 子任务4 编写并运行主程序 33
0.5 任务五 文件读/写操作 33
0.5.1 子任务1 创建目录和文件 33
0.5.2 子任务2 读取文件内容 34
学习情境1 认识数据 结构与算法 36
1.1 任务一 初识数据结构和算法 36
1.1.1 子任务1 什么是数据结构和算法 36
1.1.2 子任务2 数据结构与算法的重要性 36
1.1.3 子任务3 数据结构与算法课程 37
1.2 任务二 数据结构 37
1.2.1 子任务1 数据的处理 37
1.2.2 子任务2 数据结构的分类 38
1.2.3 子任务3 常用的数据结构 39
1.3 任务三 算法 41
1.3.1 子任务1 认识算法 41
1.3.2 子任务2 算法的重要特征 42
1.3.3 子任务3 算法分析 42
1.3.4 子任务4 算法设计方法 43
1.3.5 子任务5 递归算法及案例 43
学习情境2 线性表 50
2.1 任务一 认识线性表 50
2.1.1 子任务1 初识线性表 50
2.1.2 子任务2 认识线性表的存储结构 51
2.2 任务二 程序实现线性表的顺序存储结构及操作 52
2.2.1 子任务1 认识线性表的顺序存储结构 52
2.2.2 子任务2 线性表顺序存储结构的操作算法 52
2.2.3 子任务3 程序实现线性表顺序存储结构的操作 57
2.3 任务三 程序实现线性表的链式存储结构及操作 68
2.3.1 子任务1 认识线性表的链式存储结构 68
2.3.2 子任务2 线性表链式存储结构的操作算法 69
2.3.3 子任务3 程序实现线性表链式存储结构的操作 75
2.4 任务四 线性表的应用——解决约瑟夫环问题 81
2.4.1 子任务1 认识约瑟夫环 81
2.4.2 子任务2 约瑟夫环的程序实现 82
学习情境3 栈和队列 86
3.1 任务一 栈 86
3.1.1 子任务1 认识栈 86
3.1.2 子任务2 操作栈的顺序存储结构 87
3.1.3 子任务3 操作栈的链式存储结构 91
3.2 任务二 队列 96
3.2.1 子任务1 认识队列 96
3.2.2 子任务2 操作队列的顺序存储结构 97
3.2.3 子任务3 操作栈的链式存储结构 101
3.3 任务三 整合栈和队列的操作 105
3.3.1 子任务1 构造主程序 105
3.3.2 子任务2 构造菜单程序 106
学习情境4 串 113
4.1 任务一 认识串 113
4.1.1 子任务1 初识串 113
4.1.2 子任务2 串的基本运算 114
4.2 任务二 串的存储结构 114
4.2.1 子任务1 串的顺序存储结构 114
4.2.2 子任务2 串的链式存储结构 115
4.3 任务三 程序实现串的操作 115
4.3.1 子任务1 串的基本操作和算法 115
4.3.2 子任务2 创建主程序菜单 118
学习情境5 树和二叉树 125
5.1 任务一 认识树 125
5.1.1 子任务1 树的基础知识 125
5.1.2 子任务2 学习树的术语 126
5.1.3 子任务3 树的表示 127
5.2 任务二 二叉树 128
5.2.1 子任务1 认识二叉树 128
5.2.2 子任务2 二叉树的基本性质 129
5.2.3 子任务3 二叉树的存储结构 130
5.3 任务三 二叉树操作的程序实现 132
5.3.1 子任务1 构造二叉树的程序实现框架 132
5.3.2 子任务2 二叉树算法的程序实现 134
5.4 任务四 哈夫曼(Huffman)树 149
5.4.1 子任务1 认识哈夫曼树和哈夫曼编码 149
5.4.2 子任务2 树的路径长度 151
5.4.3 子任务3 哈夫曼编码的程序实现 152
学习情境6 图 159
6.1 任务一 认识图 159
6.1.1 子任务1 初识图 159
6.1.2 子任务2 再识图 161
6.2 任务二 图的表示 163
6.2.1 子任务1 图的邻接矩阵表示 163
6.2.2 子任务2 图的邻接表表示 164
6.3 任务三 图的遍历 165
6.3.1 子任务1 图的深度优先搜索遍历 166
6.3.2 子任务2 图的广度优先搜索遍历 166
6.4 任务四 图的应用 167
6.4.1 子任务1 最小生成树 167
6.4.2 子任务2 最短路径 169
6.4.3 子任务3 拓扑排序 170
6.5 任务五 图的程序实现 171
6.5.1 子任务1 构造图的遍历抽象类 172
6.5.2 子任务2 程序实现图的邻接矩阵表示 174
6.5.3 子任务3 程序实现图的邻接表表示 183
6.5.4 子任务4 存储图邻接矩阵的文件读/写实现 189
6.5.5 子任务5 图的应用的程序实现 193
学习情境7 排序 197
7.1 任务一 认识排序 197
7.1.1 子任务1 学习排序基础知识 197
7.1.2 子任务2 排序算法的指标分析 198
7.1.3 子任务3 程序算法的程序实现基础 198
7.2 任务二 插入排序 203
7.2.1 子任务1 直接插入排序 204
7.2.2 子任务2 希尔排序 206
7.3 任务三 交换排序 207
7.3.1 子任务1 冒泡排序 208
7.3.2 子任务2 快速排序 209
7.4 任务四 选择排序 212
7.4.1 子任务1 直接选择排序 212
7.4.2 子任务2 堆排序 213
7.5 任务五 归并排序——两路归并排序 217
7.5.1 子任务1 归并排序 217
7.5.2 子任务2 归并排序的程序实现 218
7.6 任务六 基数排序 219
7.6.1 子任务1 认识基数排序 220
7.6.2 子任务2 基数排序程序实现 220
学习情境8 查找与演示项目开发 225
8.1 任务一 认识查找 225
8.2 任务二 线性表的查找 225
8.2.1 子任务1 顺序查找 226
8.2.2 子任务2 折半查找 227
8.2.3 子任务3 分块索引查找 238
8.3 任务三 二叉排序树查找 239
8.3.1 子任务1 认识二叉排序树查找 239
8.3.2 子任务2 二叉排序树查找的图形演示项目 240
8.4 任务四 哈希表 255
8.4.1 子任务1 认识哈希表 255
8.4.2 子任务2 哈希函数的构造 255
8.4.3 子任务3 冲突及处理 256
8.4.4 子任务4 哈希表操作演示项目 257
参考文献 264
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《联吡啶基钌光敏染料的结构与性能的理论研究》李明霞 2019
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《中央财政支持提升专业服务产业发展能力项目水利工程专业课程建设成果 设施农业工程技术》赵英编 2018
- 《数据库技术与应用 Access 2010 微课版 第2版》刘卫国主编 2020
- 《大数据Hadoop 3.X分布式处理实战》吴章勇,杨强 2020
- 《Power BI数据清洗与可视化交互式分析》陈剑 2020
- 《数据失控》(美)约翰·切尼-利波尔德(John Cheney-Lippold)著 2019
- 《中国生态系统定位观测与研究数据集 森林生态系统卷 云南西双版纳》邓晓保·唐建维 2010
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《东北民歌文化研究及艺术探析》(中国)杨清波 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019