串列 (抽象資料型別)
外觀
此條目需要擴充。 (2013年11月6日) |
此條目需要精通或熟悉相關主題的編者參與及協助編輯。 (2013年11月6日) |
在計算機科學中,串列(英語:list)或序列(sequence),是一種抽象數據類型,一種有限的有序值的集合,其中每個值可以出現多次。列表的一個實例是在計算機中用來表現出數學上有限序列的概念;列表的無限類似是流。列表是容器的一個基本例子,因為它們包含其他值。在串列中的每個值(value),稱為項目(item)、條目(entry)或元素(element);如果相同的值出現多次,每一次出現都認為是分立的一個項目。列表和數組區別在列表只允許順序訪問,而數組允許隨機訪問。
在數據結構中,也使用這個名稱,表示實作出串列的數據結構,尤指鍊表(linked list)。
所謂靜態列表結構只允許對值的審查和枚舉。一個可變對象或動態列表在其生存周期內允許條目被插入、替換或刪除。
許多編程語言支持列表數據類型,針對列表和列表運算有特定的語法和邏輯。通常可以通過寫入序列中的元素來建立列表。元素用逗號、分號或空格分開,位於一對括號(如圓括號 '()', 方括號, '[]', 花括號 '{}', 以及尖括號 '<>')內部。
運算
[編輯]實現列表數據結構可以提供以下一些運算:
- 一個生成空列表的構造函數;
- 用於測試列表是否為空的運算;
- 向列表前端加入元素的運算;
- 向列表末端入元素的運算;
- 確定列表頭元素的運算;
- 用於引用除首項外所有部分的列表(這被稱為列表的「尾部」。);
- 銷毀列表析構函數
特徵
[編輯]列表有下列屬性:
- 列表的大小. 它表明列表中有多少元素。
- 列表相等:
- 列表會具有類型。這表明列表中的條目必須有與列表類型兼容的類型。當列表由數組實現的時候常常會具有類型。
- 列表中每個元素有一個標號。首元素一般標號為0或1(或其他一些預定義的整數)。後面的元素的標號比前一個大1。 尾元素的標號為<首標號> + <size> − 1。
- 可以檢索特定標號(index)的元素。
- 可以按照標號增加的順序遍歷列表。
- 可以改變特定標號的元素的值,同時不影響其他元素。
- 可以向特定標號插入一個元素。後面的元素標號增加1。
- 可以在特定標號刪除一個元素。後面的元素標號減少1。
- 列表的「頭」「尾」、「前」「後」