廢話不多說直接看**內建詳細注釋
//結點結構
typedef
struct node node,
*linklist;
//起別名,乙個正常別名,乙個指標別名
//單鏈表查詢演算法
linklist find_list
(linklist l,
int k)
if(p && i == k)
return
null
;//否則查詢元素不存在
}//單鏈表插入演算法
intinsert_list
(linklist l,
int k,
int elem)
elseif(
!p)//新建結點
s =(node*
)malloc
(sizeof
(node));
//在堆區新建一塊記憶體,並把該記憶體位址丟給s結點(s指向新建堆區記憶體)if(
!s) s->data = elem;
//資料域賦值
//建立新鏈結
s->next = p->next;
//新建結點的指標域存放原來k位置的元素的位址(指向當前k+1位置的元素)
p->next = s;
//原來k-1位置的指標域存放新建結點的位址(指向新建結點)
//成功接軌
return0;
}//刪除結點
intdelete_list
(linklist l,
int k)
elseif(
!p ||
!p->next)
s = p->next;
// 獲取要刪除結點的位址
p -> next = s->next;
//重新指向(重新銜接鍊錶結點)
free
(s);
//釋放記憶體
return0;
}
c語言單鏈表增刪查
ifndef linklist h define linklist h include include include include typedef unsigned char datatype typedef struct node linknode linknode createlink da...
C語言單鏈表 增 刪 改 查
鍊錶是一種常見的基礎資料結構,結構體指標在這裡得到了充分的利用。鍊錶可以動態的進行儲存分配,也就是說,鍊錶是乙個功能極為強大的陣列,他可以在節點中定義多種資料型別,還可以根據需要隨意增添,刪除,插入節點。鍊錶都有乙個頭指標,一般以head來表示,存放的是乙個位址。鍊錶中的節點分為兩類,頭結點和一般節...
單鏈表增刪改查
include include include include using namespace std struct node node int x,node next null 帶參初始化 建立煉表頭結點,新增引用因為要改變指標的位址指向 void createlink node head 新增鍊...