鏈接串列是一種線性表,使用Pointer串接資料,好處是找到目標位置後,可以有效率的插入或刪除元素,陣列不適合在中間位置插入或刪除資料(耗費較多時間),適合在兩端執行插入或刪除。
鏈接串列不能隨機讀取目標資料,只能逐個走到指定位置才能讀取,但陣列可以使用索引,兩者各有優缺點,可以視需求使用。
延伸閱讀:https://medium.com/@tobby168/%E7%94%A8python%E5%AF%A6%E4%BD%9Clinked-list-524441133d4d
環狀鏈接串列式使用Pointer串接資料,最後一個element可以連接到第一個element。
使用Circular Linked List的好處是是找到指定元素後,可以快速的執行插入或刪除。
如下圖:
延伸閱讀:https://www.geeksforgeeks.org/circular-linked-list-set-2-traversal/
雙向鏈接串列式使用Pointer串接資料,好處是找到目標位置後,可以很有效率的執行插入或刪除動作,也很容易找到node的前一個或後一個element。壞處是不能隨機讀取指定位置的element,只能從前往後或從後往前一個個找到目標位置。
延伸閱讀:https://favtutor.com/blogs/doubly-linked-list-python