注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計Java面向?qū)ο髷?shù)據(jù)結(jié)構(gòu)完全學(xué)習(xí)教程(典藏中文版 精)

Java面向?qū)ο髷?shù)據(jù)結(jié)構(gòu)完全學(xué)習(xí)教程(典藏中文版 精)

Java面向?qū)ο髷?shù)據(jù)結(jié)構(gòu)完全學(xué)習(xí)教程(典藏中文版 精)

定 價:¥139.00

作 者: [美] 內(nèi)爾·黛爾,丹尼爾·T·喬伊斯,奇普·威姆斯 著,王金菊,金筆佳 譯
出版社: 中國青年出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787515355252 出版時間: 2019-10-01 包裝: 平裝
開本: 16k 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡介

  本書主要介紹傳統(tǒng)的和現(xiàn)代的數(shù)據(jù)結(jié)構(gòu)方面的知識,重點介紹問題的解決和軟件的設(shè)計。從基礎(chǔ)知識開始并貫穿全書,介紹并擴展了許多Java功能的應(yīng)用,如類、對象、泛型、多態(tài)、包、接口、庫中的類、繼承、異常和線程等。我們還在整個講解過程中使用統(tǒng)一建模語言(UML)類圖來幫助建模并可視化對象、類、接口、應(yīng)用程序及其相互關(guān)系。 Chapter 1 關(guān)于基礎(chǔ)知識的整理。綜述面向?qū)ο?,強調(diào)了組織對象和類的機制。 Chapter 2 介紹了抽象數(shù)據(jù)類型棧(Stack),引入了抽象數(shù)據(jù)類型(abstract data type,ADT)的概念。 Chapter 3 討論了遞歸(Recursion),演示了如何使用遞歸解決編程問題。 Chapter 4 介紹了抽象數(shù)據(jù)類型隊列(Queue)。 Chapter 5 對抽象數(shù)據(jù)類型集合進行了定義。 Chapter 6 介紹了一個更具體的抽象數(shù)據(jù)類型—集合。 Chapter 7 介紹了二叉搜索樹抽象數(shù)據(jù)類型。 Chapter 8 講了映射(Map)抽象數(shù)據(jù)類型,映射抽象數(shù)據(jù)類型也叫符號表、字典或關(guān)聯(lián)數(shù)組。 Chapter 9 介紹了優(yōu)先級隊列抽象數(shù)據(jù)類型,它與隊列密切相關(guān),但具有不同的訪問協(xié)議。 Chapter 10 講了圖(Graph)抽象數(shù)據(jù)類型,包括實現(xiàn)方法和數(shù)種有關(guān)圖的重要算法(深度優(yōu)先搜索、廣度優(yōu)先搜索、路徑存在與否、Z短路徑和連通分量)。 Chapter 11 介紹/回顧了一些排序和查找算法。

作者簡介

  [ 美]內(nèi)爾·黛爾 Nell Dale 得克薩斯大學(xué)奧斯汀分校計算機科學(xué)博士。她自 1975 年以來,一直在得克薩斯大學(xué)奧斯汀分校任教,同時專注于計算機科學(xué)教育、寫作。出版或參與出版過的專著有《Computer Science Illuminated》《Programming and Problem Solving withC++: Brief Edition》《C++ Plus Data Structures》等。 [ 美]奇普·威姆斯 Chip Weems 美國馬薩諸塞大學(xué)阿默斯特分校計算機科學(xué)專業(yè)副教授。在過去的 20 多年中,他教授了入門編程、軟件工程、計算機體系結(jié)構(gòu)和并行處理等課程。自 1986 年以來,他與其他人合作編寫了 13 本教科書,幫助 100 多萬學(xué)生學(xué)習(xí)計算機編程。他的書已被譯成法語、西班牙語和俄語?,F(xiàn)在,他從事計算機體系結(jié)構(gòu)、編譯器、并行處理和編譯器體系結(jié)構(gòu)協(xié)同優(yōu)化方面的研 究。出版或參與出版的專著有《Turbo Pascal》《Programmingand Problem Solving with C++》《Programming inC++》《C++ Plus Data Structures》等。 [ 美]丹尼爾·T·喬伊斯 Daniel T. Joyce 美國維拉諾瓦大學(xué)計算機科學(xué)系的副教授。喬伊斯的研究興趣是軟件工程,重點是軟件需求識別。此外,他還活躍于計算機科學(xué)教育界。??

圖書目錄

Chapter 1? 知識整理
1.1? 類、對象和應(yīng)用程序?
類?
統(tǒng)一方法?
對象?
應(yīng)用程序?
1.2? 組織類?
繼承?
包?
1.3? 異常?
處理異常狀況?
異常與類:實例?
1.4? 數(shù)據(jù)結(jié)構(gòu)?
非獨立實現(xiàn)的結(jié)構(gòu)?
獨立實現(xiàn)結(jié)構(gòu)?
數(shù)據(jù)結(jié)構(gòu)的含義??
1.5? 基本結(jié)構(gòu)化機制?
內(nèi)存?
引用?
數(shù)組?
1.6? 算法比較:增長階分析?
測算法的時間效率?
情況復(fù)雜度?
輸入值的大小?
算法比較? 66
增長順序? 68
選擇排序算法? 69
常見的增長階? 72
? 小結(jié)? 73
? 習(xí)題? 74

Chapter 2? 抽象數(shù)據(jù)類型—棧?
2.1? 抽象?
信息隱藏?
數(shù)據(jù)抽象?
數(shù)據(jù)層次?
前置條件和后置條件?
Java接口?
基于接口的多態(tài)性?
2.2? 棧?
棧的操作?
棧的用法?
2.3? 集合元素?
常用集合?
2.4? 棧接口?
異常情況?
接口?
應(yīng)用實例?
2.5? 基于數(shù)組的棧實現(xiàn)?
ArrayBoundedstack類?
棧操作的定義?
ArrayListStack類?
2.6? 應(yīng)用程序:平衡表達(dá)式?
平衡類?
應(yīng)用程序?
軟件架構(gòu)?
2.7? 鏈表?
數(shù)組與鏈表?
LLNode類?
鏈表操作?
2.8? 基于鏈接的棧?
LinkedStack類?
壓棧操作?
彈棧操作?
其他棧操作?
比較棧的實現(xiàn)方式?
2.9? 應(yīng)用程序:后綴表達(dá)式評估器
討論?
后綴表達(dá)式求值?
后綴表達(dá)式求值算法?
錯誤處理?
PostFixEvaluator類?
PFixCLI類?
2.10? 棧變體?
重新審視棧抽象數(shù)據(jù)類型?
Java棧類和集合框架?
? 小結(jié)?
? 習(xí)題?

Chapter 3? 遞歸?
3.1? 遞歸定義、算法和程序?
遞歸定義
遞歸計算?
遞歸程序?
階乘的迭代解決方案?
3.2? 三個問題?
驗證遞歸算法?
確定輸入限制?
編寫遞歸方法?
調(diào)試遞歸方法?
3.3? 數(shù)組的遞歸處理?
二分查找?
3.4? 鏈表的遞歸處理?
鏈表的遞歸性質(zhì)
鏈表遍歷?
鏈表轉(zhuǎn)換?
3.5? 塔?
算法?
方法?
程序?
3.6? 分形?
丁字方形的分形?
變體?
3.7? 移除遞歸?
遞歸的工作原理?
尾調(diào)用消除?
直接使用棧?
3.8? 何時使用遞歸解決方案?
遞歸開銷?
低效算法?
清晰度?
? 小結(jié)?
? 習(xí)題?
Chapter 4? 抽象數(shù)據(jù)類型—隊列?
4.1? 隊列?
隊列操作?
使用隊列?
4.2? 隊列接口?
應(yīng)用實例?
4.3? 基于數(shù)組的隊列實現(xiàn)?
ArrayBoundedQueue類?
ArrayUnboundedQueue類?
4.4? 交互式測試驅(qū)動程序?
一般方法?
ArrayBoundedQueue類的測試驅(qū)動?
使用測試驅(qū)動程序?
4.5? 基于鏈接的隊列實現(xiàn)?
入隊操作?
出隊操作
循環(huán)鏈表隊列設(shè)計?
比較隊列實現(xiàn)?
4.6? 應(yīng)用程序:回文?
回文類?
應(yīng)用程序?
4.7? 隊列變體
特殊情況?
玻璃隊列?
雙端隊列?
雙向鏈表?
Java庫集合框架隊列/雙端隊列?
4.8? 應(yīng)用程序:平均等待時間?
問題討論和示例?
Customer類?
模擬?
測試?
4.9? 并發(fā)、干擾和同步?
Counter類?
Java線程?
干擾?
同步?
同步隊列?
并發(fā)與Java庫集合類?
? 小結(jié)?
? 習(xí)題?

Chapter 5? 抽象數(shù)據(jù)類型—集合?
5.1? 集合接口?
集合的前提?
接口?
5.2? 實現(xiàn)基于數(shù)組的集合?
5.3? 應(yīng)用程序:詞匯密度?
5.4? 重新探討比較對象?
函數(shù)equals?
Comparable接口?
5.5? 基于排序數(shù)組的集合的實現(xiàn)?
參比元素?
實現(xiàn)?
以“拷貝”或“引用”的方式實現(xiàn)抽象數(shù)據(jù)類型?
示例程序?
5.6? 基于鏈接的集合的實現(xiàn)?
內(nèi)部表示形式
運算?
比較集合實現(xiàn)?
5.7? 集合變體
Java集合框架?
Bag?ADT?
Set?ADT?
? 小結(jié)?
? 習(xí)題?

Chapter 6? 抽象數(shù)據(jù)類型—列表?
6.1? 列表接口?
迭代?
列表假設(shè)?
接口
6.2? 列表實現(xiàn)?
基于數(shù)組的實現(xiàn)?
基于鏈表的實現(xiàn)?
6.3? 應(yīng)用程序:紙牌和游戲?
Card類?
CardDeck類?
應(yīng)用程序:排列Card?Hand?
應(yīng)用程序:Higher?or?Lower?
應(yīng)用程序:一對牌有多罕見?
6.4? 基于數(shù)組的有序列表的實現(xiàn)?
插入排序?
不支持的操作?
Comparator接口?
構(gòu)造函數(shù)?
應(yīng)用實例?
6.5? 列表變體?
Java庫列表?
鏈表變體?
鏈表作為節(jié)點數(shù)組?
6.6? 應(yīng)用程序:大整數(shù)
大整數(shù)?
內(nèi)部表示?
LargeIntList類
LargeInt類
加法和減法
LargeIntCLI程序?
? 小結(jié)?
? 習(xí)題?

Chapter 7? 抽象數(shù)據(jù)類型—二叉搜索樹?
7.1? 樹?
樹的遍歷?
7.2? 二叉搜索樹?
二叉樹?
二叉搜索樹?
二叉樹遍歷?
7.3? 二叉搜索樹接口?
接口? 449
7.4? 實現(xiàn)層級:基礎(chǔ)級?
7.5? 迭代法VS遞歸法的實現(xiàn)?
size函數(shù)的遞歸法?
size函數(shù)的迭代法?
遞歸還是迭代
7.6? 實現(xiàn)層級:剩余的觀察函數(shù)?
contains和get函數(shù)?
遍歷?
7.7? 實現(xiàn)層級:轉(zhuǎn)換函數(shù)?
add操作?
remove操作?
7.8? 二叉搜索樹的功能?
重新討論文本分析實驗?
插入順序和樹形?
平衡二叉搜索樹?
7.9? 應(yīng)用程序:詞頻計數(shù)器
類WordFreq?
應(yīng)用程序?
7.10? 樹的變體?
特定應(yīng)用的變體? 4
平衡搜索樹?
? 小結(jié)?
? 習(xí)題?

Chapter 8? 抽象數(shù)據(jù)類型—Map?
8.1? Map接口?
8.2? Map的實現(xiàn)?
無序數(shù)組?
有序數(shù)組?
無序鏈表?
有序鏈表?
二叉搜索樹?
以基于ArrayList的方式實現(xiàn)?
8.3? 應(yīng)用程序:從字符串到字符串的Map?
8.4? 哈希法?
沖突
8.5? 哈希函數(shù)?
數(shù)組大小?
哈希函數(shù)?
Java對哈希的支持?
復(fù)雜度?
8.6? 基于哈希的Map?
實現(xiàn)?
使用HMap類?
8.7? Map的變體?
混合結(jié)構(gòu)?
Java對Map的支持?
? 小結(jié)?
? 習(xí)題?

Chapter 9? 抽象數(shù)據(jù)類型—優(yōu)先級隊列?
9.1? 優(yōu)先級隊列接口?
使用優(yōu)先級隊列?
接口?
9.2? 優(yōu)先級隊列的實現(xiàn)?
無序數(shù)組?
有序數(shù)組?
有序鏈表?
二叉搜索樹?
9.3? 堆?
9.4? 堆的實現(xiàn)?
二叉樹的非鏈接表示?
實現(xiàn)堆?
Enqueue(入隊)方法?
Dequeue(出隊)方法?
應(yīng)用實例?
堆VS優(yōu)先級隊列的其他表示?
? 小結(jié)?
? 習(xí)題?

Chapter 10? 抽象數(shù)據(jù)類型—圖?
10.1? 圖的介紹?
10.2? 圖的接口?
10.3? 圖的實現(xiàn)?
基于數(shù)組的實現(xiàn)?
鏈接實現(xiàn)
10.4? 應(yīng)用程序:圖的遍歷?
深度優(yōu)先搜索?
廣度優(yōu)先搜索?
10.5? 應(yīng)用程序:單源最短路徑問題?
? 小結(jié)?
? 習(xí)題
Chapter 11? 排序和查找算法?
11.1? 排序?
測試工具?
11.2? 簡單排序?
選擇排序?
冒泡排序?
插入排序
11.3? O(Nlog2N?)排序
合并排序
快速排序?
堆排序?
11.4? 更多的排序思考?
測試?
效率?
對象和引用?
比較對象?
穩(wěn)定性
11.5? 查找?
順序查找?
高概率排序?
有序集合?
哈希法?
? 小結(jié)?
? 習(xí)題?
? ?
附錄A?
? 附錄B?
? 附錄C?
? 附錄D?
? 術(shù)語表?
? 索引

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號