資料結構(2) 線性表的順序表示

2021-09-26 01:29:19 字數 703 閱讀 3032

順序表基本操作:

插入操作:最壞情況o(n),最好情況o(1),平均情況o(n)

刪除操作:最壞情況o(n),最好情況o(1),平均情況o(n)

按值查詢:最壞情況o(n),最好情況o(1),平均情況o(n)

單鏈表操作:

頭插法建立:插入時間o(1),設煉表長度n,總時間複雜度o(n)

尾插法建立:同頭插

按序號查詢結點值:時間複雜度o(n)

按值查詢表結點:時間複雜度o(n)

插入結點操作:查詢複雜度o(n),插入複雜度o(1)

刪除節點操作:查詢複雜度o(n),刪除複雜度o(1)

求表長操作:複雜度o(n)

雙鏈表:指向前驅節點和後繼結點

迴圈鍊錶:最後乙個結點的指標指向頭結點

迴圈雙鏈表:頭結點的前驅指標指向尾結點

靜態鍊錶:借助陣列描述鏈式結構,指標域存放結點的陣列下標,靜態鍊錶也要預先分配一塊連續的記憶體空間

順序表和煉表的比較:

空間分配:順序表需要預先分配足夠大的儲存空間;鏈式儲存的結點空間在需要時分配,操作靈活

順序儲存同樣適用圖和樹的儲存

資料結構 線性表的順序表示

1.相關概念 2.順序表的型別定義 順序表的儲存結構 define max 100 順序表可能達到的最大長度 typedef struct sq sqlist elemtype是乙個抽象資料型別 可以是int,float,double等或者是自定義的資料型別。在實際使用是可以使用int,float等...

資料結構之線性表(順序表示)

順序表定義 define maxsize 50 typedef struct sqlist 陣列動態分配 define maxsize 50 typedef struct sqlist 動態分配的語句 c l.data elemtype malloc sizeof elemtype initsize...

資料結構 順序線性表2

練手 上 c語言 include include define list init size 100 define listincrement 10 typedef int elemtype typedef structsqlist int initlist sq sqlist l int list...