順序表基本操作:
插入操作:最壞情況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...