Java Software Structures: Designing and Using Data Structures, 2/e (Paperback)
暫譯: Java 軟體結構:設計與使用資料結構(第二版)
John Lewis, Joseph Chase
- 出版商: Addison Wesley
- 出版日期: 2004-12-19
- 定價: $1,800
- 售價: 2.2 折 $399
- 語言: 英文
- 頁數: 631
- 裝訂: Paperback
- ISBN: 0321245849
- ISBN-13: 9780321245847
-
相關分類:
Java 程式語言、Algorithms-data-structures
立即出貨(限量) (庫存=1)
買這商品的人也買了...
-
$600$199 -
$1,920$1,824 -
$620$490 -
$990$891 -
$620$484 -
$790$774 -
$980$774 -
$620$490 -
$1,200$1,020 -
$680$537 -
$720$612 -
$750$593 -
$620$527 -
$500$395 -
$520$411 -
$500$395 -
$550$435 -
$750$593 -
$520$442 -
$390$308 -
$520$411 -
$620$527 -
$490$387 -
$580$458 -
$500$395
相關主題
商品描述
Description:
The second edition of Java Software Structures embraces the enhancements of Java 5.0, where all structures and collections are based on generics. The framework of the text walks the reader through three main areas: conceptualization, explanation, and implementation, allowing for a consistent and coherent introduction to data structures. The addition of integrated case studies provides complete examples to aid readers starting with the problem statement, to design rationale, through full implementation. Readers will learn how to develop high-quality software systems using well-designed collections and algorithms.
Table of Contents:
1. Software Development.
Software Engineering.
Software Quality.
Development Life Cycle Models.
The Unified Modeling Language (UML).
Error Handling.
Analysis of Algorithms.
Software Engineering and Data Structures.
2. Object-Oriented Design.
Overview of Object-Orientation
Using Objects
Class Libraries and Packages
State and Behavior
Classes
Encapsulation
Constructors
Method Overloading
References Revisited
The static Modifier
Wrapper Classes
Interfaces
Inheritance
Class Hierarchies
Polymorphism
Generic Types
Exceptions
3. Collections.
Introduction to Collections.
A Set Collection
Using a Set: Bingo.
Implementing a Set: with Arrays.
The ArraySet Class
Analysis of ArraySet .
4. Linked Structures.
References as Links.
Managing Linked Lists.
Elements without Links.
Implementing a Set: with Links.
Analysis of LinkedSet .
5. Black Jack Game.
Initial Design
Implementing a Black Jack Game
6. Stacks.
A Stack ADT.
Using Stacks: Evaluating Postfix Expressions.
Using Stacks: Traversing a Maze.
Implementing Stacks: with Links.
Implementing Stacks: with Arrays.
Implementing Stacks: the java.util.Stack Class.
Analysis of Stack Implementations.
7. Queues.
A Queue ADT.
Using Queues: Code Keys.
Using Queues: Ticket Counter Simulation.
Using Queues: Radix Sort.
Implementing Queues: with Links.
Implementing Queues: with Arrays.
Implementing Queues: with Circular Arrays.
Analysis of Queue Implementations.
8. Lists.
A List ADT.
Using Ordered Lists: Tournament Maker.
Using Indexed Lists: The Josephus Problem.
Implementing Lists: with Arrays.
Implementing Lists: with Links.
Analysis of List Implementations.
9. Calculator.
Initial Design
Implementing a Calculator
10. Recursion.
Recursive Thinking.
Recursive Programming.
Using Recursion.
Analyzing Recursive Algorithms.
11. Sorting and Searching.
Searching.
Linear Search.
Binary Search.
Comparing Search Algorithms.
Sorting.
Selection Sort.
Insertion Sort.
Bubble Sort.
Quick Sort.
Merge Sort.
12. Trees.
Trees.
Strategies for Implementing Trees.
Tree Traversals.
Implementing Binary Trees.
Using Binary Trees: Expression Trees.
13. Binary Search Trees.
A Binary Search Tree.
Implementing Binary Search Trees: with Links.
Using Binary Search Trees: Implementing Ordered Lists.
Balanced Binary Search Trees.
Implementing Binary Search Trees: AVL Trees.
Implementing Binary Search Trees: Red/Black Trees.
Implementing Binary Search Trees: The Java Collections API.
14. Ancestor Tree.
Initial Design
Implementing an AncestorTree
15. Heaps.
A Heap.
Using Heaps: Heap Sort.
Using Heaps: Priority Queues.
Implementing Heaps: with Links.
Implementing Heaps: with Arrays.
Analysis of Heap Implementations.
16. Multi-way Search Trees.
Combining Tree Concepts.
2-3 Trees.
2-4 Trees.
B-Trees.
Implementation Strategies for B-Trees.
17. Hashing.
A Hashing.
Hashing Functions.
Resolving Collisions.
Deleting Elements from a Hash Table.
Hash Tables in the Java Collections API.
Implementation Strategies for Hashtable
18. Graphs.
Undirected Graphs.
Directed Graphs.
Networks.
Common Graph Algorithms.
Implementation Strategies for Graphs
19. Web Crawler.
Initial Design
Implementing a Web Crawler
商品描述(中文翻譯)
描述:
《Java 軟體結構》第二版採用了 Java 5.0 的增強功能,所有結構和集合均基於泛型。這本書的框架引導讀者通過三個主要領域:概念化、解釋和實現,提供一致且連貫的數據結構介紹。新增的綜合案例研究提供完整的範例,幫助讀者從問題陳述開始,設計理由,直到完整實現。讀者將學會如何使用精心設計的集合和算法開發高品質的軟體系統。
目錄:
1. 軟體開發。
軟體工程。
軟體品質。
開發生命週期模型。
統一建模語言 (UML)。
錯誤處理。
算法分析。
軟體工程與數據結構。
2. 物件導向設計。
物件導向概述。
使用物件。
類別庫與套件。
狀態與行為。
類別。
封裝。
建構子。
方法重載。
參考重訪。
靜態修飾符。
包裝類別。
介面。
繼承。
類別層級。
多型。
泛型類型。
異常。
3. 集合。
集合介紹。
集合類別。
使用集合:賓果遊戲。
實現集合:使用陣列。
ArraySet 類別。
ArraySet 的分析。
4. 鏈結結構。
參考作為鏈結。
管理鏈結串列。
無鏈結的元素。
實現集合:使用鏈結。
LinkedSet 的分析。
5. 二十一點遊戲。
初步設計。
實現二十一點遊戲。
6. 堆疊。
堆疊 ADT。
使用堆疊:評估後綴表達式。
使用堆疊:遍歷迷宮。
實現堆疊:使用鏈結。
實現堆疊:使用陣列。
實現堆疊:java.util.Stack 類別。
堆疊實現的分析。
7. 隊列。
隊列 ADT。
使用隊列:代碼鍵。
使用隊列:票務櫃台模擬。
使用隊列:基數排序。
實現隊列:使用鏈結。
實現隊列:使用陣列。
實現隊列:使用圓形陣列。
隊列實現的分析。
8. 列表。
列表 ADT。
使用有序列表:錦標賽製作器。
使用索引列表:約瑟夫問題。
實現列表:使用陣列。
實現列表:使用鏈結。
列表實現的分析。
9. 計算器。
初步設計。
實現計算器。
10. 遞迴。
遞迴思維。
遞迴程式設計。
使用遞迴。
分析遞迴算法。
11. 排序與搜尋。
搜尋。
線性搜尋。
二元搜尋。
比較搜尋算法。
排序。
選擇排序。
插入排序。
冒泡排序。
快速排序。
合併排序。
12. 樹。
樹。
實現樹的策略。
樹的遍歷。
實現二元樹。