綜合認識陣列· 8 分鐘試看

什麼是陣列?

陣列是一段連續記憶體,用 index 直接存取。

什麼是陣列?

陣列(array)是程式裡最古老、卻也最被低估的資料結構之一。它的核心想法很單純:

連續記憶體 + 以 index 直接存取

視覺化看一遍

接下來這段 30 秒的動畫會把「連續記憶體」與「index 存取」用具體的格子展示出來:

載入動畫中…

第三秒之後,你會看到 arr[3] 被高亮 — 這就是 O(1) 存取:給定 index,CPU 不用走訪前面的元素,直接算出記憶體位址就能拿到值。

動手玩玩看

知識上知道是一回事,動手點一下感覺最深刻。下面這個小元件給你一段陣列,hover 看 index → value,把每個格子都點過一輪:

點擊每個格子,看看 arr[i] 對應到哪個值。把所有格子點過一輪就會自動標記完成。

已點 0 / 6

重點整理

  1. 連續記憶體

  2. 陣列的所有元素挨著放在一起。這帶來 cache 友善與 index 算式存取兩個好處。

  3. O(1) 存取

  4. 給定 index,直接拿到值。不用 traverse、不用比較。這是 array 的招牌效能。

  5. 大小通常固定

  6. 傳統 array 一旦配置就大小固定。動態擴張(dynamic array / vector)背後其實是「滿了就配一塊更大的、把舊的搬過去」。

自我檢查

檢查

這節課我能說出來

0 / 3
登入後可勾選保存進度。

讀取上次狀態…

反思

你想到陣列適合用在什麼場景?

想一個你自己寫過、或最近看過的程式碼,裡面在哪段用了陣列?為什麼選陣列而不是別的?

登入後即可寫下你的反思(自動儲存)。在這個 lesson 寫下的任何文字 僅你自己看得到。

接下來會進入小測驗,確認你抓到重點。

學員 Q&A

0 則提問
載入中…
載入提問…
什麼是陣列? — Array 101 | Indie Hackers Taiwan | Indie Hackers Taiwan