作者簡介
RobertLafore先生從1982年就開始編寫計算機編程方面的書。他的暢銷書有《Object-OrientedPro-gramminginC++》,此書在世界上的銷量已經超過200000冊,還有《AssemblyLanguagefortheIBMPC》、《CProgramminginTurboC++》和《C++InteractiveCourse》。Lafore先生擁有數學和電子工程的學位,他從PDP-5時代就開始活躍在編程領域了。
編輯推薦
《Java數據結構和算法》(第2版)以一種易懂的方式教授如何安排和操縱數據的問題,其中不乏一些難題:了解這些知識以期使計算機的套用獲得最好的表現。不管使用何種語言或平台,掌握了數據結構和算法將改進程式的質量和性能。《Java數據結構和算法》(第2版)提供了一套獨創的可視討論專題用以闡明主要的論題:它使用Java語言說明重要的概念,而避免了C/C++語言的複雜性,以便集中精力論述數據結構和算法。經驗豐富的作者RorbertLafore先生提供了許多簡單明了的例子,避免了對於這類例題常見的冗長、繁鎖的數學證明。在第二版中,他利用Java語言最新特性,修改並擴充了他的例子。在每一章後都有問題和練習,使讀者有機會測試自己的理解程度 。
目錄
出版說明
獻詞
簡介
第1章綜述
數據結構和算法能起到什麼作用?
數據結構的概述
算法的概述
一些定義
面向對象編程
軟體工程
對於C++程式設計師的Java
Java數據結構的類庫
小結
問題
第2章數組
Array專題Applet
Java中數組的基礎知識
將程式劃分成類
類接口
Ordered專題applet
有序數組的Java代碼
對數
存儲對象
大O表示法
為什麼不用數組表示一切?
小結
問題
實驗
編程作業
第3章簡單排序
如何排序?
冒泡排序
選擇排序
插入排序
對象排序
幾種簡單排序之間的比較
小結
問題
實驗
編程作業
第4章棧和佇列
不同的結構類型
棧
佇列
優先權佇列
解析算術表達式
小結
問題
實驗
編程作業
第5章鍊表
鏈結點(Link)
LinkList專題Applet
單鍊表
查找和刪除指定鏈結點
雙端鍊表
鍊表的效率
抽象數據類型
有序鍊表
雙向鍊表
疊代器
小結
問題
實驗
編程作業
第6章遞歸
三角數字
階乘
變位字
遞歸的二分查找
漢諾(Hanoi)塔問題
歸併排序
消除遞歸
一些有趣的遞歸套用
小結
問題
實驗
編程作業
第7章高級排序
希爾排序
劃分
快速排序
基數排序
小結
問題
實驗
編程作業
第8章二叉樹
為什麼使用二叉樹?
樹的術語
一個類比
二叉搜尋樹如何工作
查找節點
插入一個節點
遍歷樹
查找最大值和最小值
刪除節點
二叉樹的效率
用數組表示樹
重複關鍵字
完整的tree.java程式
哈夫曼(Huffman)編碼
小結
問題
實驗
編程作業
第9章紅-黑樹
第10章2-3-4樹和外部存儲
第11章哈希表
第12章堆
第13章圖
第14章帶權圖
第15章套用場合
附錄A運行專題applet和示例程式
附錄B進一步學習
附錄C問題答案