本文將詳細的介紹c語言單鏈表的建立、刪除、查詢、插入以及輸出功能
一、建立
#include#includetypedef
intelemtype;
/*結構體部分
*/typedef
struct
node
linklist;
linklist *initlist(linklist *l) //
初始化單鏈表
linklist *createlist(int
n)
return
l;}
二、插入
int insitem1(linklist *l,elemtype item,int x) /*給定的序號來插入
*/
/*若l為空表且要求將新結點插入到第非0個位置 ,則操作失敗
*/else
}while(p->next!=null&&i/*查詢第i個節點
*/
if(p->next==null&&i/*在表中不存在插入位置i ,找不到,則插入操作失敗
*/
else
}int insitem2(linklist *l,elemtype item,elemtype k) /*
插入給定值在鍊錶中的位置
*/
else
else
break
; }
if(p==null)/*
如p= =null,則沒有值為k的結點,插入操作失敗
*/
else
}}
三、刪除
int delitem(linklist *l,intx)//
在單鏈表中刪除資料元素
while(p->next!=null&&iif(p->next==null)
/*若沒有第i個結點,則刪除操作失敗
*/
else
}
四、查詢
int locitem(linklist *l,elemtype x)//查詢給定值的結點位置
else
else
break
; }
if(p==null)
/*如p= =null,則沒有值為item的結點,刪除操作失敗
*/
/*若找到該節點返回該節點的位置
*/else
return
i; }
}
五、輸出
void output(linklist *l) //輸出 printf("\n
");}
六、主函式部分
intmain()
單鏈表 建立插入刪除
建立乙個工程,在其中新增 list.h 標頭檔案,list.cpp原始檔和main.cpp原始檔。標頭檔案list.h中進行資料型別抽象 adt 宣告了乙個結構體和對應的操作,如下 ifndef list h define list h typedef struct list list 函式宣告 l...
單鏈表的建立 插入 刪除
單鏈表的初始化 建立 插入 查詢 刪除 include include typedef int elemtype 定義結點型別 typedef struct node node,linkedlist 單鏈表的初始化 linkedlist linkedlistinit l next null 將nex...
單鏈表的建立 插入 刪除
建立乙個節點 typedef struct node link 建立鍊錶 首先head 這個變數指向第乙個節點,然後讓temp1 指向每次建立的knot1節點。簡單來說就是 knot1 開闢節點,temp1儲存每次開闢的節點。num 節點個數 link createlist link head,in...