#include
#include
typedef
int elemtype;
typedef
struct nodelinknode,
*linklist;
/*p: pointer
q: next character of p,another pointer
*/linklist creat_linklist()
//頭插入法建立單鏈表演算法
return head;
}void
outputnode
(linklist l)
printf
("%4d"
,p->data)
;//列印最後乙個元素
}/*按序號查詢 get_linklist(l,i)
在單鏈表l中查詢第i個元素結點,找到返回其指標,否則返回空*/
/*插入運算 insert_linklist(l,i,x)
在單鏈表l的第i個位置上插入值為x的元素*/
linklist insert_linklist
(linklist l,
int i, elemtype x)
if(p1==
null
&&i>index)
return
null
;else
p=p->next;
flag++;}
}}/*刪除運算:del_linklist(l,i)
刪除單鏈表l上的第i個資料結點*/
intdel_linklist
(linklist l, elemtype i)
if(p1==
null
&&i>index)
return0;
int flag=1;
linknode *p;
linknode *t;
p=l;
//指向頭結點後的第乙個結點
while
(p->next!=
null
) p=p->next;
flag++;}
}/*按序號查詢 get_linklist(l,i)
在單鏈表l中查詢第i個元素結點,找到返回其指標,否則返回空*/
linknode *
locatenode
(linklist head,elemtype i)
p=p->next;
flag++;}
}int
main()
else
printf
("插入操作失敗\n");
break
;case3:
printf
("請輸入刪除元素的位置:");
scanf
("%d"
,&i)
; k=
del_linklist
(l,i);if
(k==0)
printf
("刪除失敗\n");
else
break
;case4:
printf
("請輸入要查詢的序號i:");
scanf
("%d"
,&i)
; p=
locatenode
(l,i);if
(p!=
null
)else
printf
("鍊錶中無此序號!!\n");
break
;case5:
printf
("鍊錶的儲存順序為:");
outputnode
(l);
break;}
}while
(k!=0)
;return0;
}
單鏈表頭插法
include includetypedef struct node snode snode creat 建立頭結點 for i 1 idata x s next head head s return head int lenth snode l 求鍊錶的長度 return len snode ge...
單鏈表 頭插法
include include list.h int main node head null register int i 0 int n sizeof a sizeof a 0 for ireturn 0 include list.h include include node list creat...
單鏈表頭插法尾插法
標頭檔案如下 ifndef linklist h define linklist h define success 10000 define failure 10001 define size 10 typedef int element struct node typedef struct nod...