看了很久,犹豫了很久,终于下定决心购买——结果:没货

看了很久,犹豫了很久,终于下定决心购买《数据结构与算法分析Java语言描述(第2版) 》,于是打算打亚马逊订够,结果没货。


数据结构与算法分析Java语言描述(第2版)

作者:(美)(Frank.M.Carrano)   译者:金名  

数据结构与算法分析Java语言描述(第2版)

内容简介


“数据结构”是计算机专业的基础与核心课程之一,Java是现今一种热门的语言。本书是为数据结构入门课程而编写的教材。作者Frank Carrano在编写过程自始至终特别考虑到了Java与对象,为教师和学生提供了一种精心设计并经过教学实验的方式借助Java讲授ADT和对象。本书独特的设计将内容组织为相对较短的章。这种方式使学习更容易,并留出了教学的机动性。本书教给学生如何使用线性表、词典、栈、队列等等来组织数据。利用这些数据组织方式,学生们将学到算法设计的相关技术。书中的“编程提示”给读者额外的编程建议;大量的插图使讲解更形象生动;自测题贯穿各章,书末还给出了答案。.

本书还提供了丰富的教辅材料,内容包括PPT、源代码、实验手册与实验解答、练习解答和项目设计解答等,非常适合作为数据结构的教学用书。...

目录


第1章 Java类.
1.1 对象与类
1.2 在Java类中使用方法
1.3 定义Java类
1.4 枚举类
1.5 包
本章小结
练习
项目设计
第2章 从已有类创建新类
2.1 合成
2.2 继承
2.3 类型兼容性与基类
2.4 多态性
本章小结
练习
项目设计
第3章 类的设计
3.1 封装
3.2 方法的说明
3.3 接口
3.4 类的选择
3.5 类的复用
本章小结
练习
项目设计
第4章 线性表
4.1 ADT线性表说明
4.2 使用ADT线性表
4.3 像使用自动售货机一样使用 线性表
4.4 Java类库:List接口
本章小结
练习
项目设计
第5章 用数组实现线性表
5.1 使用定长数组实现ADT线性表
5.2 使用动态扩展数组实现ADT线性表
5.3 Java类库:ArrayList与Vector类
5.4 用数组实现ADT线性表的优缺点
本章小结
练习
项目设计
第6章 用链表实现线性表
6.1 链表
6.2 使用链表实现ADT线性表
6.3 测试不完整的实现
本章小结
练习
项目设计
第7章 完成线性表的链表实现
7.1 从链表中删除一个元素
7.2 完成ADT线性表的链表实现
7.3 使用具有设置与获取方法的Node类
7.4 表尾引用
7.5 用链表实现ADT线性表的优缺点
7.6 Java类库:LinkedList类
本章小结
练习
项目设计
第8章 迭代器
8.1 什么是迭代器
8.2 Iterator接口
8.3 独立类迭代器
8.4 内部类迭代器
8.5 迭代器方法为何在自己的类中
8.6 Listherator接口
8.7 基于数组实现Listlterator接口
8.8 Java类库:Iterable接口
本章小结
练习
项目设计
第9章 算法的效率
9.1 动机
9.2 度量算法的效率
9.3 形式化
9.4 效率的图形表示
9.5 ADT线性表不同实现的效率
本章小结
练习
项目设计
第10章 递归
10.1 何谓递归
10.2 跟踪递归方法
10.5 有返回值的递归方法
10.4 递归处理数组
10.5 递归处理链表
10.6 递归方法的时间效率
10.7 困难问题的简单解法
10.8 简单问题的拙劣解法
10.9 尾递归
10.10 协同递归
本章小结
练习
项目设计
第11章 排序入门
11.1 组织用于数组排序的Java方法
11.2 选择排序
11.3 插入排序
11.4 希尔排序
11.5 算法比较
本章小结
练习
项目设计
第12章 快速排序算法
12.1 归并排序
12.2 快速排序
12.3 基数排序
12.4 算法比较
本章小结
练习
项目设计
第13章 有序表
13.1 ADT有序表的说明
13.2 链表实现
13.3 使用ADT线性表的实现
本章小结
练习
项目设计
第14章 继承与线性表
14.1 使用继承实现有序表
14.2 设计一个基类
14.3 有序表的一种高效实现
本章小结
练习
项目设计
第15章 可变对象. 不可变对象与可克隆对象
15.1 可变对象与不可变对象
15.2 可克隆对象
本章小结
练习
项目设计
第16章 查找
16.1 问题描述
16.2 查找无序数组
16.3 查找有序数租
16.4 查找无序链表
16.5 查找有序链表
16.6 查找方法的选择
本章小结
练习
项目设计
第17章 词典
17.1 ADT词典的说明
17.2 使用ADT词典
17.3 Java类库:Map接口
本章小结
练习
项目设计
第18章 词典的实现
18.1 基于数组的实现
18.2 基于向量的实现
18.3 基于链表的实现
本章小结
练习
项目设计
第19章 散列概述
19.1 什么是散列
19.2 散列函数
19.3 处理冲突
本章小结
练习
项目设计..
第20章 用散列实现词典
20.1 效率
20.2 再散列
20.3 处理冲突的各方案比较
20.4 使用散列的词典实现
20.5 Java类库:类HashMap
本章小结
练习
项目设计
第21章 栈
21.1 ADT栈的说明
21.2 利用栈处理代数表达式
21.3 程序栈
21.4 使用栈代替递归
21.5 Java类库:类Stack
本章小结
练习
项目设计
第22章 栈的实现
22.1 基于链表的实现
22.2 基于数组的实现
22.3 基于向量的实现
本章小结
练习
项目设计
第23章 队列. 双端队列与优先队列
23.I ADT队列的描述
23.2 使用队列模拟排队
23.3 使用队列计算股份销售的资本收益
23.4 Java类库:Queue接口
23.5 ADT双端队列的描述
23.6 使用双端队列计算股份销售的资本收益
23.7 ADT优先队列的描述
23.8 使用优先队列跟踪委派任务
本章小结
练习
项目设计
第24章 队列. 双端队列与优先队列的实现
24.1 基于链表的队列实现
24.2 基于数组的队列实现
24.3 基于向量的队列实现
24.4 基于循环链表的队列实现
24.5 Java类库:AbstractQueue类
24.6 基于双向链表的双端队列实现
24.7 实现优先队列的可用方法
24.8 Java类库:PriorityQueue类
本章小结
练习
项目设计
第25章 树
25.1 树的概念
25.2 树的遍历
25.3 树的Java接口
25.4 二叉树举例
25.5 树举例
本章小结
练习
项目设计
第26章 树的实现
26.1 二叉树的结点
26.2 ADT二叉树的实现
26.3 表达式二叉树的实现
26.4 树
本章小结
练习
项目设计
第27章 二叉查找树的实现
27.1 预备知识
27.2 查找与检索
27.3 遍历
27.4 插入元素
27.5 删除元素
27.6 操作的效率
27.7 ADT词典的实现
本章小结
练习
项目设计
第28章 堆的实现
28.1 再论ADT堆
28.2 用数组表示堆
28.3 插入元素
28.4 删除根
28.5 创建堆
28.6 堆排序
本章小结
练习
项目设计
第29章 平衡查找树
29.1 AVL树
29.2 2—3树
29.3 2—4树
29.4 红黑树
29.5 B树
本章小结
练习
项目设计
第30章 图
30.1 一些例子与术语
30.2 遍历
30.3 拓扑顺序
30.4 路径
30.5 ADT图的Java接口
本章小结
练习
项目设计
第31章 图的实现
31.1 两种实现的概述
31.2 顶点与边
31.3 ADT图的实现
本章小结
练习
项目设计
附录A Java基础
A.1 引言
A.2 Java基础
A.3 用键盘和屏幕进行简单的输入和输出
A.4 if-else语句
A.5 switch语句
A.6 枚举
A.7 作用域
A.8 循环
A.9 String类
A.10 StringBuilder类
A.11 使用Scanner抽取字符串的一部分
A.12 数组
A.12 封装类
附录B 异常处理
附录C 文件输入与输出
C.1 概述
C.2 使用PrintWriter写文本文件
C.3 读取文本文件
C.4 二进制文件的I/O
C.5 File类
C.6 对象串行化
附录D 文档与程序设计风格
D.1 命名变量与类
D.2 缩排
D.3 注释
附录E 自测题答案...

posted @ 2008-05-27 23:30  SPARON  阅读(530)  评论(0编辑  收藏  举报