民國114年 第2梯次 電腦軟體設計(JAVA)乙級 學科
第52題
下列哪一項關於陣列(Array)與鏈結串列(Linked List)的敘述正確?
題目
下列哪一項關於陣列(Array)與鏈結串列(Linked List)的敘述正確?
- (1) 陣列的大小通常不易決定, 而利用鏈結串列儲存資料可以事先決定所需的儲存空間大小
- (2) 陣列的存取方式為循序存取 (Sequential Access)
- (3) 從陣列刪除中第一個元素與從鏈結串列刪除第一個元素,其時間複雜度相同
- (4) 陣列中資料的插入及刪除可能會造成大量資料移動
官方答案
(4) 陣列中資料的插入及刪除可能會造成大量資料移動
解析
陣列在記憶體中是連續配置,於中間或前端插入、刪除元素時,必須把後續元素整批搬移以維持連續性,最差需 O(n) 的資料移動,故選項 4 正確。陣列採隨機存取(Random Access),可用索引直接算出位址,並非循序存取,選項 2 錯誤。陣列宣告後大小固定,反而是鏈結串列才能隨資料量動態增減節點,選項 1 把兩者特性說反了。刪除第一個元素時,陣列仍需搬移其餘 n-1 筆資料為 O(n),鏈結串列只需調整指標為 O(1),兩者複雜度不同,選項 3 錯誤。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。