Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Chapter 4 鏈結串列 Chapter 4 鏈結串列  4.1 單向鏈結串列 4.1 單向鏈結串列 4.1 單向鏈結串列  4.2 堆疊的加入與刪除 4.2 堆疊的加入與刪除 4.2 堆疊的加入與刪除  4.3 佇列的加入與刪除 4.3 佇列的加入與刪除 4.3 佇列的加入與刪除  4.4.

Liknende presentasjoner


Presentasjon om: "Chapter 4 鏈結串列 Chapter 4 鏈結串列  4.1 單向鏈結串列 4.1 單向鏈結串列 4.1 單向鏈結串列  4.2 堆疊的加入與刪除 4.2 堆疊的加入與刪除 4.2 堆疊的加入與刪除  4.3 佇列的加入與刪除 4.3 佇列的加入與刪除 4.3 佇列的加入與刪除  4.4."— Utskrift av presentasjonen:

1 Chapter 4 鏈結串列 Chapter 4 鏈結串列  4.1 單向鏈結串列 4.1 單向鏈結串列 4.1 單向鏈結串列  4.2 堆疊的加入與刪除 4.2 堆疊的加入與刪除 4.2 堆疊的加入與刪除  4.3 佇列的加入與刪除 4.3 佇列的加入與刪除 4.3 佇列的加入與刪除  4.4 其他型式的佇列 4.4 其他型式的佇列 4.4 其他型式的佇列

2 資料結構 - 使用 Java 單向鏈結串列  為何使用鏈結串列 (linked list) ? 為了避免以陣列方式來存放資料時,在插入 (insert) 或刪除 (delete) 某一節點所遇到的困 難 節省配置的記憶體空間  鏈結串列 vs. 陣列 在加入和刪除時利用指標 (pointer) ,因此比 陣列來得簡單 鏈結串列在搜尋上所花費的時間會比陣列來 得久

3 資料結構 - 使用 Java 單向鏈結串列  假設鏈結串列中每個節點有姓名 (name) 、分數 (score) 及指向下一個節點的指標 (next) ,若將節點 結構定義為 Node 型態,則宣告的方式如下:

4 資料結構 - 使用 Java 單向鏈結串列  這是一個很典型的單向鏈結串列 (Single linked list) ,如串列 A = {98, 76} ,其圖形如下:  假設鏈結串列的第一個節點 ( 亦即 head 所指向的 節點 ) 的 score 欄位不放任何資料。讓我們來看看 鏈結串列的加入與刪除的動作,而這些動作可能 作用於前端或尾端或某一特定的節點。

5 資料結構 - 使用 Java 單向鏈結串列 加入動作

6 資料結構 - 使用 Java 單向鏈結串列

7 資料結構 - 使用 Java 單向鏈結串列

8 資料結構 - 使用 Java 單向鏈結串列

9 資料結構 - 使用 Java 單向鏈結串列

10 資料結構 - 使用 Java 單向鏈結串列

11 資料結構 - 使用 Java 單向鏈結串列

12 資料結構 - 使用 Java 單向鏈結串列 刪除動作

13 資料結構 - 使用 Java 單向鏈結串列

14 資料結構 - 使用 Java 單向鏈結串列

15 資料結構 - 使用 Java 單向鏈結串列

16 資料結構 - 使用 Java 單向鏈結串列

17 資料結構 - 使用 Java 單向鏈結串列

18 資料結構 - 使用 Java 單向鏈結串列

19 資料結構 - 使用 Java 單向鏈結串列 將兩串列相連接

20 資料結構 - 使用 Java 單向鏈結串列

21 資料結構 - 使用 Java 單向鏈結串列

22 資料結構 - 使用 Java 單向鏈結串列 將一串列反轉

23 資料結構 - 使用 Java 單向鏈結串列

24 資料結構 - 使用 Java 單向鏈結串列

25 資料結構 - 使用 Java 單向鏈結串列 計算串列的長度

26 資料結構 - 使用 Java 環狀鏈結串列

27 資料結構 - 使用 Java 環狀鏈結串列 加入動作

28 資料結構 - 使用 Java 環狀鏈結串列

29 資料結構 - 使用 Java 環狀鏈結串列

30 資料結構 - 使用 Java 環狀鏈結串列

31 資料結構 - 使用 Java 環狀鏈結串列

32 資料結構 - 使用 Java 環狀鏈結串列 刪除的動作

33 資料結構 - 使用 Java 環狀鏈結串列

34 資料結構 - 使用 Java 環狀鏈結串列

35 資料結構 - 使用 Java 環狀鏈結串列

36 資料結構 - 使用 Java 環狀鏈結串列

37 資料結構 - 使用 Java 環狀鏈結串列 兩個環狀串列之相連

38 資料結構 - 使用 Java 環狀鏈結串列

39 資料結構 - 使用 Java 環狀鏈結串列

40 資料結構 - 使用 Java 雙向鏈結串列  雙向鏈結串列 (doubly linked list) 乃是每個節點皆具有 三個欄位,一為左鏈結 (LLINK) ,二為資料 (DATA) , 三為右鏈結 (RLINK) ,其資料結構如下:  其中 LLINK 指向前一個節點,而 RLINK 指向後一個節 點。通常在雙向鏈結串列加上一個串列首,此串列首 的資料欄不存放資料。如下圖所示:

41 資料結構 - 使用 Java 雙向鏈結串列 雙向鏈結串列具有下列兩點特性:  1. 假設 ptr 是任何節點的指標,則  ptr = ptr.llink.rlink = ptr.rlink.llink;  2. 若此雙向鏈結串列是空串列,則只有 一個串列首。

42 資料結構 - 使用 Java 雙向鏈結串列  加入動作

43 資料結構 - 使用 Java 雙向鏈結串列

44 資料結構 - 使用 Java 雙向鏈結串列

45 資料結構 - 使用 Java 雙向鏈結串列

46 資料結構 - 使用 Java 雙向鏈結串列

47 資料結構 - 使用 Java 雙向鏈結串列 3. 加入一節點於串列某一特定節點之後 假設雙向鏈結串列是依資料大小所建立的,其片段程式如下:

48 資料結構 - 使用 Java 雙向鏈結串列

49 資料結構 - 使用 Java 雙向鏈結串列

50 資料結構 - 使用 Java 雙向鏈結串列 刪除的動作

51 資料結構 - 使用 Java 雙向鏈結串列

52 資料結構 - 使用 Java 雙向鏈結串列

53 資料結構 - 使用 Java 雙向鏈結串列

54 資料結構 - 使用 Java 雙向鏈結串列

55 資料結構 - 使用 Java 雙向鏈結串列

56 資料結構 - 使用 Java 鏈結串列的應用 以鏈結串列表示堆疊

57 資料結構 - 使用 Java 鏈結串列的應用

58 資料結構 - 使用 Java 鏈結串列的應用

59 資料結構 - 使用 Java 鏈結串列的應用

60 資料結構 - 使用 Java 鏈結串列的應用 以鏈結串列表示佇列

61 資料結構 - 使用 Java 鏈結串列的應用

62 資料結構 - 使用 Java 鏈結串列的應用

63 資料結構 - 使用 Java 鏈結串列的應用

64 資料結構 - 使用 Java 鏈結串列的應用

65 資料結構 - 使用 Java 鏈結串列的應用 多項式相加

66 資料結構 - 使用 Java 鏈結串列的應用

67 資料結構 - 使用 Java 鏈結串列的應用

68 資料結構 - 使用 Java 鏈結串列的應用


Laste ned ppt "Chapter 4 鏈結串列 Chapter 4 鏈結串列  4.1 單向鏈結串列 4.1 單向鏈結串列 4.1 單向鏈結串列  4.2 堆疊的加入與刪除 4.2 堆疊的加入與刪除 4.2 堆疊的加入與刪除  4.3 佇列的加入與刪除 4.3 佇列的加入與刪除 4.3 佇列的加入與刪除  4.4."

Liknende presentasjoner


Annonser fra Google