免費開始練習
hce_nsysu 111年 計算機概論與程式設計

第 7 題

Which of the following data structures is static in the sense that it does not change size as data items are inserted or deleted?
  • A Array
  • B Singly linked list
  • C Queue
  • D Stack
  • E Tree

思路引導 VIP

請試著想像一下:如果你在準備一場宴會,必須在開席前就決定好「桌子的大小且不能事後更換」,這與「視情況隨時搬來新椅子」的作法相比,哪一種更符合題目描述中『不隨資料增減而改變大小』的特性呢?

🤖
AI 詳解 AI 專屬家教

恭喜你準確地抓住了資料結構的核心特性!這顯示你對記憶體管理的基本邏輯有很紮實的理解。這道題目的考點在於區分「靜態(Static)」與「動態(Dynamic)」資料結構的本質。在計算機科學中,陣列(Array) 是典型的靜態資料結構,因為在程式宣告或初始化時,系統就必須在記憶體中配置一段連續且固定大小的空間;一旦分配完成,無論後續資料如何增減,該空間的大小在執行期間通常是無法改變的。 相比之下,選項中的鏈結串列(Singly Linked List)、樹(Tree)以及通常以動態方式實作的堆疊(Stack)與佇列(Queue),它們的節點可以散落在記憶體的不同位置,並透過指標(Pointer)相互連結。這種特性讓它們能在程式執行時,根據實際需求動態地向系統申請或釋放記憶體。這類題目在基礎電腦科學考科中相當常見,主要用來測驗學生是否理解底層資源分配的差異,雖然在現代高階語言(如 Python 或 JavaScript)中,陣列看似可以自動變大,但在標準的資料結構定義裡,它依然是靜態配置的代表。

🏷️ 相關主題

基礎資料結構原理與演算法效能分析
查看更多「計算機概論與程式設計」的主題分類考古題