堆疊與佇列
堆疊
佇列
基礎與應用
建立佇列
      排序      
排序演算法1
排序演算法2
  連結串列
  圖形結構
原理
圖的種類
表示方法
  樹狀結構
簡介
名詞定義
實作二元樹
   Search    
搜尋
雜湊函數
解決溢位
 個別單元   
陣列
演算法
遞迴
     首頁      
連結串列
氣泡排序(Bubble sorting)
單向連結串列,它主要組成的定義如下:
由一組節點(Node)組成的有序串列
每個節點有『資料欄』與一個『連結欄』組成
『連結欄』指向其它節點的位置
根據以上的定義,大至上長的如下圖
接下來假如我們要新增節點D至A與B之間,過程會和下圖一樣,會將A節點的Link連至D節點,然後它再連到B結點上。而刪除結果過程也差不多,就只是重新指向節點位置。
雙向連結串列 (Double Linked List)
雙向連結串列是另一種常用的串列結構,在單向串列中,它只能順著一個方向尋找資料,而且中間不小心有個節點斷掉,那後面串列的資料就會消失且救不回來,而雙向連結就是可以改善『單向』與『節點斷掉』這兩個缺點。
雙向連結串列,它主要組成的定義如下:
由一組節點(Node)組成的有序串列
每個節點有『資料欄』與二個『連結欄』組成,一個連結前一個節點,而另一個則連結後一個節點
『連結欄』指向其它節點的位置
根據以上的定義,大至上長的如下圖
然後我們看下圖,來理解如果要插入與刪除節點時,雙向連結串列會如何處理。事際上原理和單向連結串列差不多,都是重新指向位置,只是它要多指向一個
串列和陣列的比較
由於串列和陣列這兩個使用起來很相似,但原理上,很多地方是不一樣的。以下比較表格來源為此