|
-- 會員 / 註冊 --
|
|
|
|
Java語言程序設計(進階篇)(原書第10版) ( 簡體 字) |
作者:[美]梁勇(Y. Daniel Liang) | 類別:1. -> 程式設計 -> JAVA -> Java |
譯者: |
出版社:機械工業出版社 | 3dWoo書號: 45333 詢問書籍請說出此書號!【缺書】 NT售價: 445 元 |
出版日:10/9/2016 |
頁數:468 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787111548560 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介:本書是Java語言的經典教材,中文版分為基礎篇和進階篇,主要介紹程序設計基礎、面向對象程序設計、GUI程序設計、數據結構和算法、高級Java程序設計等內容。本書可作為高等院校相關專業程序設計課程的基礎教材,也可作為Java語言及編程愛好者的參考資料。 |
目錄:Introduction to Java Programming, Comprehensive Version, Tenth Edition 出版者的話 中文版序 譯者序 前言 第19章 泛型 1 19.1 引言 1 19.2 動機和優點 1 19.3 定義泛型類和接口 4 19.4 泛型方法 5 19.5 示例學習:對一個對象數組進行排序 7 19.6 原始類型和向后兼容 8 19.7 通配泛型 10 19.8 消除泛型和對泛型的限制 12 19.9 示例學習:泛型矩陣類 15 關鍵術語 19 本章小結 19 測試題 20 編程練習題 20 第20章 線性表、棧、隊列和優先隊列 21 20.1 引言 21 20.2 合集 21 20.3 迭代器 25 20.4 線性表 26 20.4.1 List接口中的通用方法 26 20.4.2 數組線性表類ArrayList和鏈表類LinkedList 27 20.5 Comparator接口 30 20.6 線性表和合集的靜態方法 32 20.7 示例學習:彈球 35 20.8 向量類和棧類 38 20.9 隊列和優先隊列 40 20.9.1 Queue接口 40 20.9.2 雙端隊列Deque和鏈表LinkedList 40 20.10 示例學習:表達式求值 43 關鍵術語 47 本章小結 47 測試題 47 編程練習題 47 第21章 集合和映射表 53 21.1 引言 53 21.2 集合 53 21.2.1 HashSet 54 21.2.2 LinkedHashSet 57 21.2.3 TreeSet 58 21.3 比較集合和線性表的性能 61 21.4 示例學習:統計關鍵字 63 21.5 映射表 65 21.6 示例學習:單詞的出現次數 69 21.7 單元素與不可變的合集和映射表 71 關鍵術語 72 本章小結 72 測試題 72 編程練習題 72 第22章 開發高效算法 75 22.1 引言 75 22.2 使用大O符號來衡量算法效率 75 22.3 示例:確定大O 77 22.4 分析算法的時間復雜度 81 22.4.1 分析二分查找算法 81 22.4.2 分析選擇排序算法 81 22.4.3 分析漢諾塔問題 81 22.4.4 常用的遞推關系 82 22.4.5 比較常用的增長函數 82 22.5 使用動態編程計算斐波那契數 83 22.6 使用歐幾里得算法求最大公約數 85 22.7 尋找素數的高效算法 89 22.8 使用分而治之法尋找最近的點對 94 22.9 使用回溯法解決八皇后問題 97 22.10 計算幾何:尋找凸包 99 22.10.1 卷包裹算法 100 22.10.2 格雷厄姆算法 101 關鍵術語 102 本章小結 102 測試題 103 編程練習題 103 第23章 排序 109 23.1 引言 109 23.2 插入排序 110 23.3 冒泡排序 112 23.4 歸并排序 114 23.5 快速排序 117 23.6 堆排序 121 23.6.1 堆的存儲 122 23.6.2 添加一個新的結點 122 23.6.3 刪除根結點 123 23.6.4 Heap類 124 23.6.5 使用Heap類進行排序 126 23.6.6 堆排序的時間復雜度 127 23.7 桶排序和基數排序 128 23.8 外部排序 129 23.8.1 實現階段Ⅰ 131 23.8.2 實現階段Ⅱ 132 23.8.3 結合兩個階段 133 23.8.4 外部排序復雜度 136 關鍵術語 136 本章小結 136 測試題 137 編程練習題 137 第24章 實現線性表、棧、隊列和優先隊列 141 24.1 引言 141 24.2 線性表的通用特性 141 24.3 數組線性表 144 24.4 鏈表 151 24.4.1 結點 151 24.4.2 MyLinkedList類 153 24.4.3 實現MyLinkedList 154 24.4.4 MyArrayList和MyLinkedList 162 24.4.5 鏈表的變體 162 24.5 棧和隊列 163 24.6 優先隊列 167 本章小結 168 測試題 169 編程練習題 169 第25章 二叉查找樹 171 25.1 引言 171 25.2 二叉查找樹 171 25.2.1 表示二叉查找樹 172 25.2.2 查找一個元素 173 25.2.3 在BST中插入一個元素 173 25.2.4 樹的遍歷 174 25.2.5 BST類 176 25.3 刪除BST中的一個元素 184 25.4 樹的可視化和MVC 189 25.5 迭代器 192 25.6 示例學習:數據壓縮 194 關鍵術語 199 本章小結 199 測試題 199 編程練習題 199 第26章 AVL樹 203 26.1 引言 203 26.2 重新平衡樹 204 26.3 為AVL樹設計類 205 26.4 重寫insert方法 207 26.5 實現旋轉 207 26.6 實現delete方法 208 26.7 AVLTree類 209 26.8 測試 AVLTree類 214 26.9 AVL樹的時間復雜度分析 216 關鍵術語 217 本章小結 217 測試題 217 編程練習題 217 第27章 散列 219 27.1 引言 219 27.2 什么是散列 219 27.3 散列函數和散列碼 220 27.3.1 基本數據類型的散列碼 220 27.3.2 字符串類型的散列碼 221 27.3.3 壓縮散列碼 221 27.4 使用開放地址法處理沖突 222 27.4.1 線性探測 222 27.4.2 二次探測法 223 27.4.3 再哈希法 224 27.5 使用鏈地址法處理沖突 225 27.6 裝填因子和再散列 226 27.7 使用散列實現映射表 227 27.8 使用散列實現集合 235 關鍵術語 241 本章小結 242 測試題 242 編程練習題 242 第28章 圖及其應用 244 28.1 引言 244 28.2 基本的圖術語 245 28.3 表示圖 247 28.3.1 表示頂點 247 28.3.2 表示邊:邊數組 248 28.3.3 表示邊:Edge對象 248 28.3.4 表示邊:鄰接矩陣 249 28.3.5 表示邊:鄰接線性表 249 28.4 圖建模 251 28.5 圖的可視化 261 28.6 圖的遍歷 263 28.7 深度優先搜索(DFS) 264 28.7.1 DFS的算法 264 28.7.2 DFS的實現 265 28.7.3 DFS的應用 267 28.8 示例學習:連通圓問題 268 28.9 廣度優先搜索(BFS) 270 28.9.1 BFS的算法 270 28.9.2 BFS的實現 271 28.9.3 BFS的應用 272 28.10 示例學習:9枚硬幣反面問題 273 關鍵術語 278 本章小結 278 測試題 278 編程練習題 278 第29章 加權圖及其應用 283 29.1 引言 283 29.2 加權圖的表示 284 29.2.1 加權邊的表示:邊數組 284 29.2.2 加權鄰接矩陣 285 29.2.3 鄰接線性表 285 29.3 WeightedGraph類 286 29.4 最小生成樹 292 29.4.1 最小生成樹算法 293 29.4.2 完善Prim的MST算法 295 29.4.3 MST算法的實現 295 29.5 尋找最短路徑 298 29.6 示例學習:加權的9枚硬幣反面問題 305 關鍵術語 308 本章小結 308 測試題 309 編程練習題 309 第30章 多線程和并行程序設計 314 30.1 引言 314 30.2 線程的概念 314 30.3 創建任務和線程 315 30.4 Thread類 318 30.5 示例學習:閃爍的文本 320 30.6 線程池 322 30.7 線程同步 324 30.7.1 synchronized關鍵字 326 30.7.2 同步語句 327 30.8 利用加鎖同步 327 30.9 線程間協作 329 30.10 示例學習:生產者/消費者 333 30.11 阻塞隊列 336 30.12 信號量 338 30.13 避免死鎖 339 30.14 線程狀態 340 30.15 同步合集 341 30.16 并行編程 342 關鍵術語 346 本章小結 346 測試題 347 編程練習題 347 第31章 網絡 350 31.1 引言 350 31.2 客戶端/服務器計算 351 31.2.1 服務器套接字 351 31.2.2 客戶端套接字 351 31.2.3 通過套接字進行數據傳輸 352 31.2.4 客戶端/服務器示例 353 31.3 InetAddress類 357 31.4 服務多個客戶 358 31.5 發送和接收對象 361 31.6 示例學習:分布式井字游戲 365 關鍵術語 376 本章小結 376 測試題 376 編程練習題 376 第32章 Java數據庫程序設計 379 32.1 引言 379 32.2 關系型數據庫系統 379 32.2.1 關系結構 380 32.2.2 完整性約束 381 32.3 SQL 383 32.3.1 在MySQL上創建用戶賬戶 383 32.3.2 創建數據庫 384 32.3.3 創建和刪除表 385 32.3.4 簡單插入、更新和刪除 386 32.3.5 簡單查詢 387 32.3.6 比較運算符和布爾運算符 387 32.3.7 操作符like、between-and和is null 388 32.3.8 列的別名 388 32.3.9 算術運算符 389 32.3.10 顯示互不相同的記錄 389 32.3.11 顯示排好序的記錄 390 32.3.12 聯結表 390 32.4 JDBC 391 32.4.1 使用JDBC開發數據庫應用程序 392 32.4.2 從JavaFX訪問數據庫 396 32.5 PreparedStatement 398 32.6 CallableStatement 400 32.7 獲取元數據 403 32.7.1 數據庫元數據 403 32.7.2 獲取數據庫表 404 32.7.3 結果集元數據 405 關鍵術語 406 本章小結 406 測試題 407 編程練習題 407 第33章 JavaServer Faces 411 33.1 引言 411 33.2 開始使用JSF 411 33.2.1 創建一個JSF項目 412 33.2.2 一個基本的JSF頁面 412 33.2.3 JSF的受管JavaBean 414 33.2.4 JSF表達式 416 33.3 JSF GUI組件 418 33.4 處理表單 421 33.5 示例學習:計算器 425 33.6 會話跟蹤 428 33.7 驗證輸入 430 33.8 將數據庫與facelet綁定 434 33.9 打開一個新的JSF頁面 439 關鍵術語 445 本章小結 445 測試題 445 編程練習題 446 附錄A Java關鍵字 451 附錄B ASCII字符集 452 附錄C 操作符優先級表 453 附錄D Java修飾符 454 附錄E 特殊浮點值 455 附錄F 數系 456 附錄G 位操作 460 附錄H 正則表達式 461 附錄I 枚舉類型 465
|
序: |
|