線性表的特點(diǎn)是可以在任意位置插入一個(gè)數(shù)據(jù)元素或者刪除一個(gè)數(shù)據(jù)元素,線性表可以用順序存儲結(jié)構(gòu)或者鏈?zhǔn)酱鎯Y(jié)構(gòu)簡稱順序表和鏈表芥牌,鏈表主要有單鏈表烦味,循環(huán)鏈表和循環(huán)雙向鏈表三種
線性表的定義
- 除第一個(gè)和最后一個(gè)元素外,每個(gè)數(shù)據(jù)元素都只有一個(gè)前驅(qū)數(shù)據(jù)元素和一個(gè)后繼數(shù)據(jù)元素
- 第一個(gè)數(shù)據(jù)元素沒有前驅(qū)數(shù)據(jù)元素壁拉,最后一個(gè)數(shù)據(jù)元素沒有后繼數(shù)據(jù)元素
線性表谬俄,堆棧,數(shù)組弃理,隊(duì)列溃论,串和數(shù)組都屬于線性結(jié)構(gòu)
線性表可以在任意位置進(jìn)行插入和刪除
順序表如數(shù)組將數(shù)據(jù)元素存儲在一塊連續(xù)的地址空間的內(nèi)存單元中,這樣邏輯上相鄰的數(shù)據(jù)元素在物理存儲地址上也相鄰
順序表插入和刪除一個(gè)數(shù)據(jù)元素的時(shí)間復(fù)雜度為O(n),其余操作都和n無關(guān)痘昌,因此順序表取數(shù)據(jù)和其他操作的時(shí)間復(fù)雜度為O(1)
順序表的優(yōu)點(diǎn)是取數(shù)據(jù)元素的操作效率高钥勋,內(nèi)存空間利用率高
順序表的缺點(diǎn)是插入和刪除操作需要移動(dòng)較多的數(shù)據(jù)元素