線性表是一種儲存方式,可以想象是很多個車廂連起來的火車。每個車廂有兩個區域,乙個存放資料乙個鏈結下一節車廂。
線性表的一些基本操作。初始化,增加元素,刪除元素,查詢元素,輸出表中元素。
鏈式儲存
例如鍊錶一樣通過指標把不同區域的資料聯絡起來形成順序儲存。
#include
#include
typedef
struct node *list;
//node重新命名為指標*list
struct node
;//提前宣告函式
list findlist
(int a,list head)
;//查詢函式
void
delelist
(int a,list head)
;//刪除函式
void
insert
(int a,
int x,list head)
;//增加函式
void
printflist
(list head)
;//輸出函式
list initlist()
//初始化函式
list findlist
(int a,list head)
//查詢函式,在以head為頭節點的表中查詢資料a,
else
}printf
("表中沒有這個元素!\n");
return
null;}
void
delelist
(int a,list head)
//刪除元素a
else
}printf
("表中沒有這個元素!\n");
return;}
void
insert
(int a,
int x,list head)
else
else}}
printf
("未插入該元素!\n");
}void
printflist
(list head)
printf
("\n");
}int
main()
順序儲存
像陣列一樣
#include
#include
struct node
;typedef
struct node *list;
void
delelist
(int a,list node)
;void
insert
(int a,
int x,list node)
;void
printflist
(list node)
;list initlist()
intfindlist
(int a,list node)
i++;}
printf
("表中沒有%d這個數!"
,a);
return-1
;}void
delelist
(int a,list node)
i++;}
while
(i+1
<=node->last)
node->last--
;printf
("%d被刪除成功\n刪除後數列:"
,a);
printflist
(node);}
void
insert
(int a,
int x,list node)
node->data[x-1]
=a; node->last++;}
void
printflist
(list node)
while
(i<=node->last)
}int
main()
順序儲存方式儲存線性表
include 標頭檔案 include define list init size 100 定義儲存容量 define listincremnet 10 擴充套件儲存容量 define overflow 0 允許溢位為0 定義順序表的結構 typedef struct listonde 自定義順序...
線性表的順序儲存 線性表的順序儲存結構
1,本文實現乙個線性表 2,順序儲存定義 1,線性表的順序儲存結構,指的是用一段位址連續的儲存單元依次儲存線性表中的資料元素 2,在 c 中可以用乙個陣列作為介質來儲存資料元素 3,設計思路 1,可以用一維陣列實現順序儲存結構 1,儲存空間 t m array 2,當前長度 int m length...
線性表順序儲存和鏈式儲存
輸入第1行是乙個整數n,表示之後還有n行輸入。每行輸入表示對線性表的一條操作指令,格式是 指令編號 引數1 引數2 如有 指令編號為3,表示find操作,此時只有乙個引數,即待查元素的值。順序儲存 include using namespace std const int maxn 1e4 1 st...