阿摩線上測驗
登入
首頁
>
資料處理
>
107年 - 107 普通考試_統計、資訊處理:資料處理概要#70516
> 申論題
申論題
試卷:107年 - 107 普通考試_統計、資訊處理:資料處理概要#70516
科目:資料處理
年份:107年
排序:0
申論題資訊
試卷:
107年 - 107 普通考試_統計、資訊處理:資料處理概要#70516
科目:
資料處理
年份:
107年
排序:
0
申論題內容
二、試比較陣列(Array)與鏈結串列(Linked List)之差異?(25 分)
詳解 (共 3 筆)
詳解
提供者:lionlin00
如果有需要大量的插入和刪除就用 Linked List , 否則使用 Array
詳解
提供者:hchungw
陣列(Array)
存儲方式
:
陣列是一組連續的存儲單元,每個元素都緊鄰在一起,並且大小固定。
訪問速度
:
快速隨機訪問
:由於陣列中的元素是連續存儲的,可以通過索引直接訪問,訪問時間為O(1)。
插入和刪除操作
:
插入和刪除較慢
:在陣列中間插入或刪除元素時,需要移動大量元素,時間複雜度為O(n)。
內存利用
:
內存效率高
:由於是連續存儲,陣列的內存利用率較高。
大小固定
:
在大多數編程語言中,陣列的大小在創建後是固定的,無法動態調整。
鏈結串列(Linked List)
存儲方式
:
鏈結串列由一系列節點組成,每個節點包含數據和一個指向下一個節點的指標。節點在內存中不必是連續存儲的。
訪問速度
:
線性訪問
:由於每個節點都包含指向下一個節點的指標,要訪問某個元素必須從頭開始逐個遍歷,訪問時間為O(n)。
插入和刪除操作
:
插入和刪除較快
:在鏈結串列中插入或刪除元素只需要更改指標,時間複雜度為O(1),但需要先找到插入或刪除的位置,這個操作時間為O(n)。
內存利用
:
內存效率較低
:由於每個節點除了存儲數據外還需要存儲指標,會消耗額外的內存。
大小動態
:
鏈結串列的大小可以動態調整,節點數量可以隨著元素的插入和刪除而變化,不需要事先確定大小。
陣列
:適合需要頻繁隨機訪問且插入和刪除操作較少的情況,具有高效的訪問速度和較高的內存利用率,但大小固定,插入和刪除操作效率較低。
鏈結串列
:適合需要頻繁插入和刪除操作的情況,大小可以動態調整,但訪問速度較慢,內存利用效率較低。
詳解
提供者:YABE
陣列:
必須按照順序讀取,因此較好搜尋資料,但若要在其中插入或刪除資料,必須在 欲更動的位置之後方全部的資料刪除
鏈結陣列:
一個資料空間包含一個資料和指標,指標會指向某一個資料,因此為不連續,若要更動資料只要改變指標方向就好,能夠從中直接改變但也因為連續,搜尋資料時較為費時。