作 者:(美)梁勇 著 戴開宇 譯
定 價:99
出 版 社:機械工業出版社
出版日期:2018年10月01日
頁 數:388
裝 幀:平裝
ISBN:9787111610038
●出版者的話
中文版序
譯者序
前言
第19章 泛型
19.1 引言
19.2 動機和優點
19.3 定義泛型類和接口
19.4 泛型方法
19.5 示例學習:對一個對像數組進行排序
19.6 原生類型和向後兼容
19.7 通配泛型
19.8 泛型的擦除和
19.9 示例學習:泛型矩陣類
關鍵術語
本章小結
測試題
編程練習題
第20章 線性表、棧、隊列和優先隊列
20.1 引言
20.2 集合
20.3 迭代器
20.4 使用forEach方法
20.5 線性表
20.5.1 11st接口中的通用方法
20.5.2 數組線性表類ArrayList和鏈表類L1nkedLlst
20.6 Comparator接口
20.7 線性表和集合的靜態方法
20.8 示例學習:彈球
20.9 向量類和棧類
20.10 隊列和優先隊列
20.10.1 Queue接口
20.10.2 雙端隊列Deque和鏈表LinkedList
20.11 示例學習:表達式求值
關鍵術語
本章小結
測試題
編程練刁題
第21章 規則集和映射
21.1 引言
21.2 規則集
21.2.1 HashSet
21.2.2 LinkedHashSet
21.2.3 TreeSet
21.3 比較規則集和線性表的性能
21.4 不例學習:關鍵字計數
21.5 映射
21.6 示例學習:單詞的出現次數
21.素與不可變的
集合和映射
關鍵術語
本章小結
測試題
編程練習題
第22章 開發高效算法
22.1 引言
22.2 使用大D標記來衡量算法效率
22.3 示例:確定大D
22.4 分析算法的時間復雜度
22.4.1 分析二分查找算法
22.4.2 分析選擇排序算法
22.4.3 分析漢諾塔問題
22.4.4 常用的遞推關繫
22.4.5 比較常用的增長函數
22.5 使用動態編程尋找斐波那契數
22.6 使用歐幾裡得算法求優選公約數
22.7 尋找素數的高效算法
22.8 使用分而治之法尋找最近點對
22.9 使用回溯法解決八皇後問題
22.10 計算幾何:尋找凸包
22.10.1 卷包裹算法
22.10.2 格雷阨姆算法
關鍵術語
本章小結
測試題
編程練習題
……
第23章 排序
第24章 實現線性表、棧、隊列和優先隊列
第25章 二叉搜索樹
第26章 AVL樹
第27章 散列
第28章 圖及其應用
第29章 加權圖及其應用
第30章 集合流的聚合操作
附錄
本書是Java語言的經典教材,中文版分為基礎篇和進階篇,主要介紹程序設計基礎、面向對像程序設計、GUI程序設計、數據結構和算法、不錯Java程序設計等內容。本書以示例介紹解決問題的技巧,提供大量的程序清單,每章配有大量復習題和編程練習題,幫助讀者掌握編程技術,並應用所學技術解決實際工程問題。進階篇突出數據結構和算法,主要涵蓋以下內容:泛型,規則集和映射,開發高效算法,實現線性表、棧、隊列和優先隊列,二叉搜索樹,AVL樹,散列,圖及其應用,加權圖及其應用,集合流的聚合操作等。本書可作為高等院校計算機專業相關課程的教材,也可供Java語言及編程愛好者參考。
許多讀者就本書之前的版本給出了很多反饋。這些評論和建議極大地改進了本書。這一版在表述、組織、示例、練習題以及附錄方面都有大幅提高。本書采用基礎優先的方法,在設計用戶自定義類之前,首先介紹基本的程序設計概念和技術。選擇語句、循環、方法和數組這樣的基本概念和技術是程序設計的基礎,它們為學生進一步學習面向對像程序設計和高級Java程序設計做好準備。本書以問題驅動的方式來教授程序設計,將重點放在問題的解決而不是語法上。我們通過使用在各種應用情景中引發思考的問題,使得程序設計的介紹變得更加有趣。前面章節的主線放在問題的解決上,引入合適的語法和庫以支持編寫解決問題的程序。為了支持以問題驅動的方式來教授程序設計,本書提供了大量不同難度的問題來激發學生的積極性。為了吸引各個專業的學生來學習,這些問題涉及很多應用領域,包括數學、科學、商業、金融、遊戲、動畫以及多媒體等。本書將程序設計、數據結構和算法無縫整合等