實現單鏈表的基本操作(建立,查詢,插入,刪除,銷毀,歸併,排序)
建立鍊錶 la鍊錶初始化成功
請輸入la中元素的個數:
9請輸入第
9 個元素:9
請輸入第
8 個元素:8
請輸入第
7 個元素:7
請輸入第
6 個元素:6
請輸入第
5 個元素:5
請輸入第
4 個元素:4
請輸入第
3 個元素:3
請輸入第
2 個元素:2
請輸入第
1 個元素:112
3456
789建立鍊錶 lb
鍊錶初始化成功
請輸入lb中元素的個數:
5請輸入第
5 個元素:9
請輸入第
4 個元素:7
請輸入第
3 個元素:5
請輸入第
2 個元素:3
請輸入第
1 個元素:113
579合併鍊錶 la lb
鍊錶初始化成功11
2334
5567
7899
請按任意鍵繼續. . .
//----------------------------單鏈表的儲存表示-------------------------------
#include
#include
#define ok 1
#define error 0
#define true 1
#define false 0
#define overflow -1typedef
intstatus;
typedef
intelemtype;
typedef
struct
lnode
lnode, *linklist;
status initlist_l(linklist *l) ;
status createlist_l(linklist *l, int
n);status listinsert_l(linklist *l, int
i, elemtype e);
status listdelete_l(linklist *l, int i, elemtype *e);
status displaylist_l(linklist *l);
status getelem_l(linklist l,
int pos, elemtype *e);
status locateelem_l(linklist l,
int *pos, elemtype e);
status mergelist_l(linklist *la, linklist *lb, linklist *lc);
intmain()
status initlist_l(linklist *l)
(*l)->next =null;
printf_s(
"鍊錶初始化成功\n");
return
ok;}
//initlist_l
status createlist_l(linklist *l, int
n)
return
ok;}
//createlist_l
status listinsert_l(linklist *l, int
i, elemtype e)
if (!p || j > i - 1
)
s = (linklist) malloc(sizeof
(lnode));
s->data =e;
s->next = p->next;
p->next =s;
return
ok;}
//listinsert_l
status listdelete_l(linklist *l, int i, elemtype *e)
if (!(p->next) || j > i - 1
)
q = p->next;
p->next = q->next;
e = &(q->data);
free(q);
return
ok;}
//listdelete_l
status displaylist_l(linklist *l)
printf_s("\n
");return
ok;}
//displaylist_l
status getelem_l(linklist l,
int pos, elemtype *e)
if (!p || j e = &(p->data);
return
ok;}
//getelem_l
status locateelem_l(linklist l,
int *pos, elemtype e)
if(!p)
*pos =i;
return
ok;}
//locateelem_l
status destroylist_l(linklist l)
//銷毀鍊錶
l =null;
return
ok;}
//destroylist_l
status mergelist_l(linklist *la, linklist *lb, linklist *lc)
else
}pc->next = pa ?pa : pb;
free(*lb);
return
ok;}
//mergelist_l
單鏈表基本操作
include include include include includeusing namespace std typedef struct node node,plinklist plinklist createfromhead node pstnode node malloc sizeof...
單鏈表基本操作
單鏈表的初始化,建立,插入,查詢,刪除。author wang yong date 2010.8.19 include include typedef int elemtype 定義結點型別 typedef struct node node,linkedlist 單鏈表的初始化 linkedlist...
單鏈表基本操作
include using namespace std define namelenth 20 define ok 0 define error 1 typedef struct flagnode node 生成結點 inline node newnode 銷毀化煉表 void destroylin...