跳轉到內容

程式設計基礎/陣列和列表

來自華夏公益教科書,開放的書籍,開放的世界

陣列是一種資料結構,由元素(值或變數)集合組成,每個元素由至少一個數組索引或鍵標識。[1]

根據語言的不同,陣列型別可能與其他描述值聚合的資料型別重疊(或被標識為),例如列表和字串。陣列型別通常由陣列資料結構實現,但有時也透過其他方式實現,例如雜湊表、連結串列或搜尋樹。[2] 在 Python 中,內建陣列資料結構是列表。

靜態陣列具有固定大小。它們的長度不能更改。另一方面,動態陣列的長度可以更改。根據 geeksforgees.org 的說法,動態陣列被描述為一個簡單的動態陣列,可以透過分配固定大小的陣列來構建,通常是立即需要的元素數量。動態陣列的元素按順序儲存在底層陣列的開頭。可以透過使用預留的記憶體空間,在動態陣列的末尾即時新增元素,直到該空間被完全消耗掉。[3][4]

陣列是一種資料結構,由元素集合組成,每個元素由一個“陣列索引”或“鍵”標識。陣列的每個軸被稱為維度。一個“列表”是一個一維陣列。一個“表”是一個二維陣列。索引符號使用方括號 [] 或 {}(取決於程式語言)來指定陣列的元素,並將其儲存到陣列中。字串是一維字元陣列。與其他一維陣列不同,我們通常將字串視為水平的字元流,而不是垂直的列表。

陣列的單個值被稱為成員或元素。運算子允許我們引用或訪問單個成員。與引用陣列成員相關的運算子通常是索引運算子。

定義陣列

[編輯 | 編輯原始碼]
語言 示例
C++ int ages[] = {49, 48, 26, 19, 16};
C# int[] ages = {49, 48, 26, 19, 16};
Java int[] ages = {49, 48, 26, 19, 16};
JavaScript var ages = [49, 48, 26, 19, 16];
Python ages = [49, 48, 26, 19, 16]
Swift var ages:[Int] = [49, 48, 26, 19, 16]

這個過程被稱為定義儲存空間。這裡使用方括號 [] 來建立包含五個整數成員的陣列,並使用識別符號名稱 ages。使用花括號(即塊)進行賦值建立了分配給陣列成員的初始值。注意序列或逗號運算子的使用。我們也可以做類似的事情

語言 示例 初始值
C++ int ages[5]; 未定義
C# int[] ages = new int[5]; 0
Java int[] ages = new int[5]; 0
JavaScript var ages = Array(5); 未定義
Python ages = [None] * 5

這將宣告五個整數的儲存空間,並使用識別符號名稱 ages,但它們的初始值將是未知值或根據程式語言初始化為指示的值。我們可以在程式的後面透過以下方式賦值(在 Python 中省略分號)

ages[0] = 49;
ages[1] = 48;
ages[2] = 26;
ages[3] = 19;
ages[4] = 16;

注意:陣列的成員從 0 到 4;而不是從 1 到 5。下一頁將對此進行更詳細的解釋。

關鍵詞

[編輯 | 編輯原始碼]
陣列
是一種資料結構,由元素(值或變數)集合組成。
維度
陣列的軸。
索引符號
使用方括號 [] 或 {}(取決於程式語言)來指定陣列的元素。
列表
一維陣列。
二維陣列。

參考文獻

[編輯 | 編輯原始碼]
華夏公益教科書