分享
 
 
 

Java软件结构与数据结构(第3版)(大学计算机教育国外著名教材系列)(Java Sofrtware Structures Designing and Using Structures Third Edition)

Java软件结构与数据结构(第3版)(大学计算机教育国外著名教材系列)(Java Sofrtware Structures Designing and Using Structures Third Edition)  点此进入淘宝搜索页搜索
  特别声明:本站仅为商品信息简介,并不出售商品,您可点击文中链接进入淘宝网搜索页搜索该商品,有任何问题请与具体淘宝商家联系。
  參考價格: 点此进入淘宝搜索页搜索
  分類: 图书,教材教辅与参考书,大学,计算机专业,
  品牌: John Lewis

基本信息·出版社:清华大学出版社

·页码:526 页

·出版日期:2009年09月

·ISBN:9787302207306

·条形码:9787302207306

·包装版本:第1版

·装帧:平装

·开本:16

·正文语种:英语

·丛书名:大学计算机教育国外著名教材系列

·外文书名:Java Sofrtware Structures Designing and Using Structures Third Edition

产品信息有问题吗?请帮我们更新产品信息。

内容简介《Java软件结构与数据结构(第3版)》是著名作者John Lewis与William Loftus作为其一流的CS1教材“Java Software Solutions:Foundations of Program Design”的姊妹篇。尽管《Java软件结构与数据结构(第3版)》的英文名为“Java Software Structures: Designing and Using Data Structures”,但正如作者在前言中所说的那样,《Java软件结构与数据结构(第3版)》其实是一本可作为“数据结构与算法”课程的教材。根据使用了前两版的教师和学生的反馈,作者在第3版中进行了重大修改,以适应教学的需要。

《Java软件结构与数据结构(第3版)》关注的是数据结构和算法背后的核心设计问题。在展现每种集合时,《Java软件结构与数据结构(第3版)》都是先探讨该集合的一般概念,接着再讨论该集合在问题求解中的用法,最后讨论了各种候选实现方案。因此,《Java软件结构与数据结构(第3版)》是“数据结构与算法”Java语言描述课程的理想教材。

编辑推荐《Java软件结构与数据结构(第3版)》:大学计算机教育国外著名教材系列。

目录

Chapter I Introduction

1.1 Software Quality

Correctness

Reliability

Robustness

Usability

Maintainability

Reusability

Portability

Efficiency

Quality Issues

1.2 Data Structures

A Physical Example

Containers as Objects

Chapter 2 Analysis of Algorlthms

2.1 Algorithm Efficiency

2.2 Growth Functions and Big-OH Notation

2.3 Comparing Growth Functions

2.4 Determining Time Complexity

Analyzing Loop Execution

Nested Loops

Method Calls

Chapter 3 Collections

3.1 Introduction to Collections

Abstract Data Types,

The lava Collections API

3.2 A Stack Collection

3.3 Crucial OO Concepts

Inheritance

Class Hierarchies

The Object Class

Polymorphism

References and Class Hierarchies

Generices

3.4 A Stack ADT

Interfaces

3.5 Using Stacks: Evaluating Postfix Expressions

3.6 Exceoflons

Exception Messages

The try Statement

Exception Propagation

3.7 Implementing a Stack: Wlth Arrays

Managing Capacity

3.8 The ArrayStaak Class

The Constructors

The push Operation

The pop Operation

The peek Operation

Other Operations

Chapter 4 Llnked Structures

4.1 References as Unks

4.2 Managing Linked Lists

Accessing Elements

Inserting Nodes

Deleting Nodes

Sentinel Nodes

4.3 Elements Without Links

Doubly Linked Lists

4.4 Implementing a Stack: Wlth Links

The LinkedStack Class

The push Operation

The pop Operation

Other Operations

4.5 Using Stacks: Traversing a Maze

4.6 Implementing Stacks:

The java. util. Stack Class

Unique Operations

Inheritance and Implementation

Chapter 5 Queues

5.1 A Queue ADT

5.2 Using Queues: Code Keys

5.3 Using Queues: Ticket Counter Simulation

5.4 Implementing Queues: With Links

The remove Operation

The contains Operation

The ieeraeor Operation

The add Operation for an Ordered List

The enque Operation

The dequeue Operation

Other Operations

5.5 Implementing Queues: With Arrays

The enqueue Operation

The dequeue Operation

Other Operations

Chapter 6 Lists

6.1 A List ADT

Iterators

Adding Elements to a List

Interfaces and Polymorphism

6.2 Using Ordered Lists: Tournament Maker

6.3 Using Indexed Lists: The Josephus Problem

6.4 Implementing Queues: With Arrays

The enqueue Operation

The dequeue Operation

Other Operations

Operations Particular to Unordered Lists

The addAfter Operation for an Unordered List

6.5 Implementing Llsts: With Llnks

The remove Operation

Doubly Linked Lists

The iterator Operation

6.6 Lists in the Java Collections API

Cloneable

Serializable

RandomAccess

Java.util.Vector

Java.util.ArrayList

Java.util.LinkedList

Chapter 7 Recursion

7.1 Recurslve Thlnking

Infinite Recursion

Recursion in Math

7.2 Recurslve Programming

Recursion versus Iteration

Direct versus Indirect Recursion

7.3 Using Recutsion

Traversing a Maze

The Towers of Hanoi

7.4 Analyzing Recursive Algorithms

Chapter 8 Sorting and Searching

8.1 Searching

Static Methods

Generic Methods

Linear Search

Binary Search

Comparing Search Algorithms

8.2 Sorting

Insertion Sort

……

Chapter 9 Trees

Chapter 10 Binary Search Trees

Chapter 11 Priority Queues and Heaps

Chapter 12 Multi-way Seach Trees

Chapter 13 Graphs

Chapter 14 Hashing

Chapter 15 Sets and Maps

Appendix A UML

Appendix B Object-Oriented Design

……[看更多目录]

序言This book is designed to serve as a text for a course on data structures and algo-rithms. This course is typically referred to as the CS2 course because it is oftentaken as the second course in a computing curriculum. We have designed thisbook to embrace the tenets of Computing Curricula 2001 (CC2001).

Pedagogically, this book follows the style and approach of the leading CS1book Java Software Solutions: Foundations of Program Design, by John Lewisand William Loftus. Our book uses many of the highly regarded features of thatbook, such as the Key Concept boxes and complete code examples. Together,these two books support a solid and consistent approach to either a two-courseor three-course introductory sequence for computing students. That said, thisbook does' not assume that students have used Java Sofware Solutions in a previ-ous course.

Material that might be presented in either course (such as recursion or sorting)is presented in this book as well. We also include strong reference material pro-viding an overview of object-oriented concepts and how they are realized in Java.

We understand the crucial role that the data structures and algorithms courseplays in a curriculum and we think this book serves the needs of that course well.The Third EditionWe have made some key modifications in this third edition to enhance its peda-gogy. The most important-change is a fundamental reorganization of material thatis designed to create a cleaner flow of topics. Instead of having an early, largechapter to review obiect-oriented concepts, we've included that material as anappendix for reference. Then we review concepts as needed and appropriate in thecontext of the implementation strategies discussed throughout the book and citethe appropriate reference material. This not only links the topics in a timely fash-ion but also demonstrates the usefulness of particular language constructs.

We've expanded the discussion of Analysis of Algorithms, and given it its ownchapter. The discussion, however, stays at an appropriately moderate level. Ourstrategy is to motivate the concepts involved in the analysis of algorithms, layinga solid foundation, rather than get embroiled in too much formality.

文摘插图:

Java软件结构与数据结构(第3版)(大学计算机教育国外著名教材系列)(Java Sofrtware Structures Designing and Using Structures Third Edition)

Abstraction is another important software engineering concept. In large soft-ware systems, it is virtually impossible for any one person to grasp all of the de-tails of the system at once. Instead, the system is divided into abstract subsystemssuch that the purpose of and the interactions among those subsystems can bespecified. Subsystems may then be assigned to different developers or groups ofdevelopers that will develop the subsystem to meet its specification.

An object is the perfect mechanism for creating a collection because, if it is de-signed correctly, the internal workings of an object are encapsulated from the restof the system. In almost all cases, the instance variables defined in a class shouldbe declared with private visibility. Therefore, only the methods of that class canaccess and modify them. The only interaction a user has with an object should bethrough its public methods, which represent the services that the object provides. As we progress through our exploration of collections, we will always stressthe idea of separating the interface from the implementation. Therefore, for everycollection that we examine, we should consider the following:

How does the collection operate, conceptually?

How do we formally define the interface to the collection?

What kinds of problems does the collection help us solve?

In which various ways might we implement the collection?

What are the benefits and costs of each implementation?

Before we continue, let's carefully define some other terms related to the explo-ration of collections. A data type is a group of values and the operations definedon those values. The primitive data types defined in Java are the primary exam-pies. For example, the integer data type defines a set of numeric values and theoperations (addition, subtraction, etc.) that can be used on them. An abstract data type (ADT) is a data type whose value

……[看更多书摘]

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有