正版保障 假一赔十 可开发票
¥ 69.42 5.0折 ¥ 139 全新
库存4件
作者(美)内尔?黛尔、(美)丹尼尔?T?乔伊斯、(美)奇普?威姆斯著、王金菊、金笔佳 文译
出版社中国青年出版社
ISBN9787515355252
出版时间2019-07
装帧平装
开本16开
定价139元
货号27918196
上书时间2024-10-26
本书主要介绍传统的和现代的数据结构方面的知识,重点介绍问题的解决和软件的设计。从基础知识开始并贯穿全书,介绍并扩展了许多功能的应用,如类、对象、泛型、多态、包、接口、库中的类、继承、异常和线程等。我们还在整个讲解过程中使用统一建模语言()类图来帮助建模并可视化对象、类、接口、应用程序及其相互关系。
关于基础知识的整理。综述面向对象,强调了组织对象和类的机制。
介绍了抽象数据类型栈(),引入了抽象数据类型()的概念。
讨论了递归(),演示了如何使用递归解决编程问题。
介绍了抽象数据类型队列()。
对抽象数据类型集合进行了定义。
介绍了一个更具体的抽象数据类型—集合。
介绍了二叉搜索树抽象数据类型。
讲了映射()抽象数据类型,映射抽象数据类型也叫符号表、字典或关联数组。
介绍了优先级队列抽象数据类型,它与队列密切相关,但具有不同的访问协议。
讲了图()抽象数据类型,包括实现方法和数种有关图的重要算法(深度优先搜索、广度优先搜索、路径存在与否、*短路径和连通分量)。
介绍回顾了一些排序和查找算法。
美]内尔·黛尔
得克萨斯大学奥斯汀分校计算机科学博士。她自年以来,一直在得克萨斯大学奥斯汀分校任教,同时专注于计算机科学教育、写作。出版或参与出版过的专著有《
》《》《》等。
美]奇普·威姆斯
美国马萨诸塞大学阿默斯特分校计算机科学专业副教授。在过去的多年中,他教授了入门编程、软件工程、计算机体系结构和并行处理等课程。自年以来,他与其他人合作编写了本教科书,帮助多万学生学习计算机编程。他的书已被译成法语、西班牙语和俄语。现在,他从事计算机体系结构、编译器、并行处理和编译器体系结构协同优化方面的研
究。出版或参与出版的专著有《》《》《》《》等。
美]丹尼尔··乔伊斯
美国维拉诺瓦大学计算机科学系的副教授。乔伊斯的研究兴趣是软件工程,重点是软件需求识别。此外,他还活跃于计算机科学教育界。
知识整理
类、对象和应用程序
组织类
异常
数据结构
基本结构化机制
算法比较:增长阶分析
小结
习题
抽象数据类型—栈
抽象
接口
栈
集合元素
栈接口
基于数组的栈实现
类
类
应用程序:平衡表达式
链表
类
基于链接的栈
类
应用程序:后缀表达式评估器
类
类
栈变体
栈类和集合框架
小结
习题
递归
递归定义、算法和程序
三个问题
数组的递归处理
链表的递归处理
查找
小结
习题
附录
附录
附录
术语表
索引
本书主要介绍传统的和现代的数据结构方面的知识,重点介绍问题的解决和软件的设计。从基础知识开始并贯穿全书,介绍并扩展了许多功能的应用,如类、对象、泛型、多态、包、接口、库中的类、继承、异常和线程等。我们还在整个讲解过程中使用统一建模语言()类图来帮助建模并可视化对象、类、接口、应用程序及其相互关系。
关于基础知识的整理。综述面向对象,强调了组织对象和类的机制。
介绍了抽象数据类型栈(),引入了抽象数据类型()的概念。
讨论了递归(),演示了如何使用递归解决编程问题。
介绍了抽象数据类型队列()。
对抽象数据类型集合进行了定义。
介绍了一个更具体的抽象数据类型—集合。
介绍了二叉搜索树抽象数据类型。
讲了映射()抽象数据类型,映射抽象数据类型也叫符号表、字典或关联数组。
介绍了优先级队列抽象数据类型,它与队列密切相关,但具有不同的访问协议。
讲了图()抽象数据类型,包括实现方法和数种有关图的重要算法(深度优先搜索、广度优先搜索、路径存在与否、*短路径和连通分量)。
介绍回顾了一些排序和查找算法。
美]内尔·黛尔
得克萨斯大学奥斯汀分校计算机科学博士。她自年以来,一直在得克萨斯大学奥斯汀分校任教,同时专注于计算机科学教育、写作。出版或参与出版过的专著有《
》《》《》等。
美]奇普·威姆斯
美国马萨诸塞大学阿默斯特分校计算机科学专业副教授。在过去的多年中,他教授了入门编程、软件工程、计算机体系结构和并行处理等课程。自年以来,他与其他人合作编写了本教科书,帮助多万学生学习计算机编程。他的书已被译成法语、西班牙语和俄语。现在,他从事计算机体系结构、编译器、并行处理和编译器体系结构协同优化方面的研
究。出版或参与出版的专著有《》《》《》《》等。
美]丹尼尔··乔伊斯
美国维拉诺瓦大学计算机科学系的副教授。乔伊斯的研究兴趣是软件工程,重点是软件需求识别。此外,他还活跃于计算机科学教育界。
抽象数据类型—队列 知识目标 你可以 在抽象层次描述队列和其实现 定义队列接口 描述用数组实现队列操作的算法 比较基于数组实现队列的固定队头和浮动队头方法 说明如何用数组实现无界队列 描述用链表实现队列操作的算法 用增长阶分析描述及比较队列算法的效率 定义队列中元素的间隔时间、服务时间、周转时间和等待时间 说明并发线程如何互相干扰、引发出错,以及如何预防该干扰 技能目标 你可以 用数组实现有界队列抽象数据类型(ADT) 用数组实现无界队列ADT 用链表实现无界队列ADT 绘制图表表示特定队列实现的队列操作效果 使用队列ADT作为应用程序的一部分 给定到达时间和服务要求,计算队列元素的周转时间和等待时间 用队列模拟系统调研真实世界中的队列属性 实现一个程序,它能正确使用线程以利用问题解决方案内置的平行性 本章我们将讨论队列。在逻辑上队列与栈相对应,栈属于“后进先出”结构,而 队列属于“先进先出”结构。在队列中时间长的元素就是先移除的元素。与栈 一样,队列有多种与系统编程有关的重要用法,而且该结构也适用于其他多种应用 程序。 我们把队列当成一种抽象数据类型,从抽象层次、应用层次和实现层次来对待。 在抽象层次,队列用Java接口定义。我们将讨论数种队列应用程序,特别是探讨如何 用队列确定某个字符串是否属于回文,并调研真实世界中的队列属性。我们将用两种 基本方法实现队列:数组和链表。除了用数组实现有界队列之外,我们也会学习如何 用数组实现无界队列。与我们处理视图的正常顺序有所不同,本章的后一节讨论了 如何使用队列来保存旨在执行并行的任务,而如果这种并行性能够用于提高性能,我 们该如何使用Java来妥善利用并列。 4.1 队列 在Chapter 2中学习的栈结构,通常是在同一端进行元素添加和移除。但如果我们 需要介绍一种有不同操作方式的集合,又该怎么办呢?假设我们模拟洗车场洗车,车 辆从车场的一头进去,从另一头出来。元素从一端进入,再从相反的另一端出来的数 据结构称为队列。队列数据结构,就跟洗车场一样,其特点就是去的元素(车 辆)是先出来的元素(车辆)。 这种队列的基本形式存在数种变体,为了进行区别,我们一般引用先进先出的队 列。其他队列版本将在第4.7节“队列变体”和Chapter 9“抽象数据类型-优先级队 列”中进行介绍。现在我们把注意力集中在队列的常见版本,即一般所说的“队列” 是指先进先出的队列。与栈的情况一样,我们从三个层次把队列视为一种抽象数据类 型:抽象、实现和应用层次。 |
队列操作 书店的例子暗示了可以应用于队列的两种操作。首先,我们可以在队尾添加新元 素,这个操作叫入队(enqueue);其次,我们可以从队头移除元素,这个操作叫出队 (dequeue)。图4.2用方块模拟队列元素,向我们展示了上述操作对队列产生的影响。 与栈操作的压栈和退栈不一样,队列的添加和移除操作没有标准的名称。 enqueue 操作有时也会叫enq、 enque、 add(添加)或者insert(插入), dequeue的别称也有 deq、 deque、 remove(移除)、或serve。 使用队列 Chapter 2中讨论了操作系统和编译 — 没有更多了 — 此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP
|
以下为对购买帮助不大的评价