(一)線性表的定義
線性結構的特點是:在資料元素的非空有限集中,(1) 存在唯一的乙個被成為"第乙個"的資料元素;(2)存在唯一的乙個被成為"最後乙個"的資料元素;(3)除了第乙個之外,其他的元素均只有乙個前驅,除了最後乙個以外,其他的元素均只有乙個後繼
線性表是最常用且最簡單的一種資料結構,乙個線性表是n個資料元素的有限序列。線性表中的資料元素可以是各種各樣的,但是同乙個線性表中的元素必定具有相同的特性,相鄰的元素之間存在這序偶關係。
(二)線性表的順序表示和實現
線性表的順序表示指的是用一組位址連續的儲存單元依次儲存線性表的資料元素。線性表的這種機內表示稱做線性表的順序儲存結構或者順序映像,通常稱這種儲存結構的線性表為順序表。用元素在計算機內"物理位置相鄰"來表示線性表中元素之間的邏輯關係。只要確定了儲存線性表的起始位置,線性表中任一元素都可以隨機訪問,所以線性表的順序儲存結構是一種隨機訪問的儲存結構.
線性表順序儲存各種操作的時間複雜度:
取元素:o(1) 尾部插入或者刪除元素:o(1) 其他位置插入或者刪除元素:o(n)
表長度:o(1)
(三)線性表的鏈式表示和實現
線性表的鏈式儲存結構的特點是用一組任意的儲存單元儲存線性表的資料元素(這組儲存單元可以是連續也可以是不連續的)。為了表示每個資料元素和它的直接後繼之間的關係,每個元素不僅要儲存其本身的資訊,還要儲存乙個指示其後繼的資訊
單鏈表的各種操作的時間複雜度:
取元素:o(n) 插入/刪除:o(n) 表長度:o(n)
資料結構筆記(一) 線性表(棧)
棧的定義 棧 stack 是限定僅在表尾進行插入和刪除的線性表 棧的插入操作,也叫入棧 壓棧 進棧 棧的刪除操作,也叫出棧 彈棧。首先我們來看棧的抽象資料型別 adt 棧 stack data 同線性表。元素具有相同的型別,相鄰元素具有前驅和後繼關係。operation initstack s 初始...
C 資料結構實驗一線性表
實驗內容 1.建立乙個順序表,隨機產生 10 個 100 以內的整數,並按要求完成 1 編寫顯示函式,在螢幕上顯示順序表中的 10 個整數 2 編寫查詢函式,從鍵盤輸入任一整數在順序表中查詢,若找到,返回該元素在順序表中的位置,否則提示無此元素 3 編寫插入函式,從鍵盤輸入待插入元素及插入位置,將完...
資料結構(一) 線性表之單向鍊錶
線性表,linear list,是最基本 最簡單 最常用的一種資料結構。乙個線性表是n個具有相同特性的資料元素的有限序列,例如 a1,ai 1,ai,ai 1,an 表示乙個順序表,ai 1領先於ai,ai領先於ai 1,稱ai 1是ai的直接前驅元素,ai 1是ai的直接後繼元素。特別的,第乙個元...