书籍详情
数据抽象和问题求解:Java语言描述(第2版)
作者:(美)卡拉诺(Carrano,F.M.),(美)普里查德(Prichard,J.J.) 著,郭平,张敏 译
出版社:清华大学出版社
出版时间:2007-05-01
ISBN:9787302149392
定价:¥79.80
购买这本书可以去
内容简介
本书全面系统地讲述了如何利用Java语言解决实际问题,重点剖析了数据结构和数据抽象的核心概念,并通过大量示例向读者展示了面向对象程序设计理念的精髓。本书在第1版的基础上完善了所有的Java代码,使用UML处理了所有伪代码,通过准确的概念讲解、贴切的示例和范围广泛的问题讨论,使老师和学生的教与学都变得轻松自如。本书能够使读者系统地掌握问题求解技术和相关的编程技能,为日后的软件开发工作打下坚实的基础。本书表述严谨、推理缜密,适合作为计算机及相关专业本科学生的教材,也是一本技术含量很高的专业参考书。
作者简介
Frank M.Carrano,Syracuse大学博士毕业,现任Rhode Island大学计算机科学系教授。主要研究方向为数据抽象技术、教育软件及多媒体技术。曾编写多本计算机书籍,如Problem Solving and Data Abtraction with C++:Walls and Mirrors,Intermediate Problem Solving and Data Structures:Walls and Mirrors等。
目录
第Ⅰ部分 问题求解技术
第1章 Java编程基础
1.1 程序结构
1.2 Java基础知识
1.3 分支结构
1.4 循环结构
1.5 有用的Java类
1.6 Java异常
1.7 文本输入和输出
1.8 文件输入和输出
1.9 小结
1.10 提示
第2章 编程原理与软件工程
2.1 问题求解与软件工程
2.2 面向对象设计
2.3 关键编程问题
2.4 小结
2.5 提示
2.6 自我测试题
2.7 练习题
2.8 编程问题
第3章 递归:镜子
3.1 递归解决方案
3.2 计数
3.3 数组查找
3.4 组织数据
3.5 递归与效率
3.6 小结
3.7 提示
3.8 自我测试题
3.9 练习题
3.10 编程问题
第4章 数据抽象:墙
4.1 抽象数据类型
4.2 指定ADT
4.3 实现ADT
4.4 小结
4.5 提示
4.6 自我测试题
4.7 练习题
4.8 编程问题
第5章 链表
5.1 预备知识
5.2 链表编程
5.3 链表的各种变体
5.4 清单应用程序
5.5 Java集合框架
5.6 小结
5.7 提示
5.8 自我测试题
5.9 练习题
5.10 编程问题
第Ⅱ部分 使用抽象数据类型解决问题
第6章 递归问题求解技术
6.1 回溯
6.2 定义语言
6.3 递归和数学归纳法的关系
6.4 小结
6.5 提示
6.6 自我测试题
6.7 练习题
6.8 编程问题
第7章 栈
7.1 ADT栈
7.2 ADT栈的简单应用
7.3 ADT栈的实现
7.4 应用:代数表达式
7.5 应用:查找问题
7.6 栈和递归的关系
7.7 小结
7.8 提示
7.9 自我测试题
7.10 练习题
7.11 编程问题
第8章 队列
8.1 ADT队列
8.2 ADT队列的简单应用
8.3 实现ADT队列
8.4 基于位置的ADT总览
8.5 模拟应用
8.6 小结
8.7 提示
8.8 自我测试题
8.9 练习题
8.10 编程问题
第9章 高级Java主题
9.1 继承
9.2 动态绑定和抽象类
9.3 ADT列表和有序表
9.4 Java泛型
9.5 迭代器
9.6 小结
9.7 提示
9.8 自我测试题
9.9 练习题
9.10 编程问题
第10章 算法的效率和排序
10.1 确定算法的效率
10.2 排序算法及其效率
10.3 小结
10.4 提示
10.5 自我测试题
10.6 练习题
10.7 编程问题
第11章 树
11.1 术语
11.2 ADT二叉树
11.3 ADT二叉查找树
11.4 一般树
11.5 小结
11.6 提示
11.7 自我测试题
11.8 练习题
11.9 编程问题
第12章 表和优先队列
12.1 ADT表
12.2 ADT优先队列: ADT表的变体
12.3 JCF中的表和优先队列
12.4 小结
12.5 提示
12.6 自我测试题
12.7 练习题
12.8 编程问题
第13章 表的高级实现方案
13.1 平衡查找树
13.2 散列
13.3 按多种形式组织数据
13.4 小结
13.5 提示
13.6 自我测试题
13.7 练习题
13.8 编程问题
第14章 图
14.1 术语
14.2 将图作为ADT
14.3 图的遍历
14.4 图的应用
14.5 小结
14.6 提示
14.7 自我测试题
14.8 练习题
14.9 编程问题
第15章 外部方法
15.1 了解外部存储
15.2 排序外部文件的数据
15.3 外部表
15.4 小结
15.5 提示
15.6 自我测试题
15.7 练习题
15.8 编程练习
附录A Java与C++的区别
附录B Unicode字符代码
附录C Java资源
附录D 数学归纳法
附录E Java操作符
附录F 术语表
附录G 自我测试题答案
第1章 Java编程基础
1.1 程序结构
1.2 Java基础知识
1.3 分支结构
1.4 循环结构
1.5 有用的Java类
1.6 Java异常
1.7 文本输入和输出
1.8 文件输入和输出
1.9 小结
1.10 提示
第2章 编程原理与软件工程
2.1 问题求解与软件工程
2.2 面向对象设计
2.3 关键编程问题
2.4 小结
2.5 提示
2.6 自我测试题
2.7 练习题
2.8 编程问题
第3章 递归:镜子
3.1 递归解决方案
3.2 计数
3.3 数组查找
3.4 组织数据
3.5 递归与效率
3.6 小结
3.7 提示
3.8 自我测试题
3.9 练习题
3.10 编程问题
第4章 数据抽象:墙
4.1 抽象数据类型
4.2 指定ADT
4.3 实现ADT
4.4 小结
4.5 提示
4.6 自我测试题
4.7 练习题
4.8 编程问题
第5章 链表
5.1 预备知识
5.2 链表编程
5.3 链表的各种变体
5.4 清单应用程序
5.5 Java集合框架
5.6 小结
5.7 提示
5.8 自我测试题
5.9 练习题
5.10 编程问题
第Ⅱ部分 使用抽象数据类型解决问题
第6章 递归问题求解技术
6.1 回溯
6.2 定义语言
6.3 递归和数学归纳法的关系
6.4 小结
6.5 提示
6.6 自我测试题
6.7 练习题
6.8 编程问题
第7章 栈
7.1 ADT栈
7.2 ADT栈的简单应用
7.3 ADT栈的实现
7.4 应用:代数表达式
7.5 应用:查找问题
7.6 栈和递归的关系
7.7 小结
7.8 提示
7.9 自我测试题
7.10 练习题
7.11 编程问题
第8章 队列
8.1 ADT队列
8.2 ADT队列的简单应用
8.3 实现ADT队列
8.4 基于位置的ADT总览
8.5 模拟应用
8.6 小结
8.7 提示
8.8 自我测试题
8.9 练习题
8.10 编程问题
第9章 高级Java主题
9.1 继承
9.2 动态绑定和抽象类
9.3 ADT列表和有序表
9.4 Java泛型
9.5 迭代器
9.6 小结
9.7 提示
9.8 自我测试题
9.9 练习题
9.10 编程问题
第10章 算法的效率和排序
10.1 确定算法的效率
10.2 排序算法及其效率
10.3 小结
10.4 提示
10.5 自我测试题
10.6 练习题
10.7 编程问题
第11章 树
11.1 术语
11.2 ADT二叉树
11.3 ADT二叉查找树
11.4 一般树
11.5 小结
11.6 提示
11.7 自我测试题
11.8 练习题
11.9 编程问题
第12章 表和优先队列
12.1 ADT表
12.2 ADT优先队列: ADT表的变体
12.3 JCF中的表和优先队列
12.4 小结
12.5 提示
12.6 自我测试题
12.7 练习题
12.8 编程问题
第13章 表的高级实现方案
13.1 平衡查找树
13.2 散列
13.3 按多种形式组织数据
13.4 小结
13.5 提示
13.6 自我测试题
13.7 练习题
13.8 编程问题
第14章 图
14.1 术语
14.2 将图作为ADT
14.3 图的遍历
14.4 图的应用
14.5 小结
14.6 提示
14.7 自我测试题
14.8 练习题
14.9 编程问题
第15章 外部方法
15.1 了解外部存储
15.2 排序外部文件的数据
15.3 外部表
15.4 小结
15.5 提示
15.6 自我测试题
15.7 练习题
15.8 编程练习
附录A Java与C++的区别
附录B Unicode字符代码
附录C Java资源
附录D 数学归纳法
附录E Java操作符
附录F 术语表
附录G 自我测试题答案
猜您喜欢