物件導向觀念資料結構 ─ 使用Java語言
範例程式
第一章、概論
EuclidGCDApplet.java:此程式可輸入二個整數,並以歐幾里得演算法求其最大公因數(GCD)
EuclidGCDApplet.html:「EuclidGCDApplet」網頁檔案
Prime1Applet.java:此程式可輸入一個大於2的整數,並判斷此整數是否為質數(prime
number)
Prime1Applet.html:「Prime1Applet」網頁檔案
Prime2Applet.java:此程式可輸入一個大於2的整數,並判斷此整數是否為質數(prime
number)
Prime2Applet.html:「Prime2Applet」網頁檔案
第二章、堆疊
堆疊類別.java:利用物件陣列製作stack,實作stack的所有操作:壓入(push),彈出(pop),檢視(peek),大小(size),已空(isEmpty),清空(clear)
堆疊測試.java:測試「堆疊類別」各個操作的執行
堆疊測試.html:「堆疊測試」網頁檔案
括號檢查.java:檢查 ( [ { 是否與
} ] )配對
括號檢查.html:「括號檢查」網頁檔案
第三章、佇列
堆疊類別.java:利用物件陣列製作queue,實作queue的所有操作enqueue(排隊),dequeue(離隊),隊首(front),size(大小),isEmpry(已空)
佇列測試.java:測試「佇列類別」各個操作的執行
佇列測試.html:「佇列測試」網頁檔案
迴文測試.java:使用「佇列類別」與「堆疊類別」測試一個字串是否為迴文
迴文測試.html:「迴文測試」網頁檔案
第四章、陣列
矩陣乘積.java:利用陣列表示矩陣並進行矩陣乘積運算
矩陣乘積.html:「矩陣乘積」網頁檔案
多項式和.java:利用陣列表示多項式並進行多項式和運算
多項式和.html:「多項式和」網頁檔案
魔術方陣.java:利用陣列表示魔術方陣並產生奇數魔術方陣
魔術方陣.html:「魔術方陣」網頁檔案
隨機漫步.java:以模擬方式解決隨機漫步問題
隨機漫步.html:「隨機漫步」網頁檔案
可排序陣列.java:含「改良氣泡排序」的「可排序陣列」類別檔案
可排序陣列測試.java:測試「可排序陣列」類別中的「改良氣泡排序」方法
可排序陣列測試.html:「可排序陣列測試」網頁檔案
第五章、遞迴
求階乘.java:以遞迴與非遞迴方法求階乘值的範例程式
求階乘.html:「求階乘」網頁檔案
n后問題.java:在n乘n西洋棋棋盤上放置n個皇后棋子之範例程式
n后問題.html:「n后問題」網頁檔案
河內之塔測試.java:以遞迴方式解決河內之塔(Towers
of Hanoi)問題
河內之塔測試.html:「河內之塔測試」網頁檔案
快速排序陣列.java:含「快速排序」方法的「快速排序陣列」類別檔案
快速排序陣列測試.java:測試「快速排序陣列」類別中的「快速排序」方法
快速排序陣列測試.html:「快速排序陣列測試」網頁檔案
二分搜尋陣列.java:含「二分搜尋」方法的「二分搜尋陣列」類別檔案
二分搜尋陣列測試.java:測試「二分搜尋陣列」類別中的「二分搜尋」方法
二分搜尋陣列測試.html:「二分搜尋陣列測試」網頁檔案
第六章、鏈結串列
選課清單類別.java:以「節點類別」製作之類別
選課清單測試.java:「選課清單類別」之測試程式
選課清單測試.html:「選課清單測試」網頁檔案
串列堆疊類別.java:利用鏈結串列製作堆疊
串列堆疊測試.java:測試「堆疊佇列類別」各個操作的執行
串列堆疊測試.html:「串列堆疊測試」網頁檔案
串列佇列類別.java:利用鏈結串列製作佇列
串列佇列測試.java:測試「串列佇列類別」各個操作的執行
串列佇列測試.html:「串列佇列測試」網頁檔案
雙鏈節點類別.java:定義雙鏈串列的「雙鏈節點」結構的類別
雙端佇列類別.java:利用雙鏈節點製作雙端佇列
雙端佇列測試.java:測試「雙端佇列類別」各個操作的執行
雙端佇列測試.html:「雙端佇列測試」網頁檔案
第七章、樹
樹類別.java:利用物件陣列以完整(complete)二元樹方式製作tree
樹類別測試.java:測試「樹類別」各個操作的執行
樹類別測試.html:「樹類別測試」網頁檔案
第八章、圖
圖類別.java:以「相鄰矩陣」表示之「圖」資料結構類別
圖類別測試.java:測試「圖類別」的「深度優先搜尋」與「廣度優先搜尋」方法
圖類別測試.html:「圖類別測試」網頁檔案
第九章、雜湊表
雜湊表類別.java:「雜湊表類別」範例程式,假設所有的鍵值均大於0,鍵值為-1則代表鍵值已刪除
雜湊表測試.java:「雜湊表類別」之測試程式
雜湊表測試.html:「雜湊表測試」網頁檔案