14 在程式執行中,為有效地利用記憶體空間,當需要記憶體空間來存放資料時,才向系統索取所需的記憶體空間,要達到此目的,下列何種資料結構設計最合適?
(A) Queue
(B) Stack
(C) Circular Array
(D) Linked List
答案:登入後查看
統計: A(58), B(118), C(69), D(245), E(0) #3127737
統計: A(58), B(118), C(69), D(245), E(0) #3127737
詳解 (共 2 筆)
#6105052
Linked-list
優點:
新增/刪除資料較簡單: 只要對前一個 note 調整 pointer 即可,不需要像 Array搬動其餘元素。
若是在Linked list的「開頭」新增node,只要O(1)。
若要刪除特定node,或者在特定位置新增node,有可能需要先執行O(N)的「搜尋」。
可以有效運用空間: Linked list的資料數量可以是動態的,不像Array會有resize的問題。
缺點:
搜尋較費時: 因為Linked list沒有index,若要找到特定node,需要從頭開始找起,搜尋的時間複雜度為O(N)。
占較多記憶體: 需要額外的記憶體空間來儲存 pointer。
適用時機:
無法預期資料數量時,使用Linked list就沒有resize的問題。
需要頻繁地新增/刪除資料時。
不需要快速查詢資料
2
0