單鏈表型別描述
typedef char datatype; //假設結點的資料域型別為字元
typedef struct nodelistnode;
typedef listnode *linklist;
listnode *p;
linklist head;
①生成結點變數的標準函式
p=( listnode *)malloc(sizeof(listnode));
//函式malloc分配乙個型別為listnode的結點變數的空間,並將其首位址放入指標變數p中
②釋放結點變數空間的標準函式
free(p);//釋放p所指的結點變數空間
③結點分量的訪問
利用結點變數的名字*p訪問結點分量
方法一:(*p).data和(*p).next
方法二:p-﹥data和p-﹥next
(1) 頭插法建表
linklist creatlistf(void)
return head;
} (2) 尾插法建表
linklist creatlistr(void)
//endwhile
if (r!=null)
r->next=null;//對於非空表,將尾結點指標域置空head=s;
return head;
} (3) 尾插法建帶頭結點的單鏈表
linklist creatlistr1(void)
r->next=null;//終端結點的指標域置空,或空表的頭結點指標域置空
return head;
} (1)按序號查詢
listnode* getnode(linklist head,int i)
if(i==j)
return p;//找到了第i個結點
else return null;//當i<0或i>0時,找不到第i個結點
} (2) 按值查詢
listnode* locatenode (linklist head,datatype key)
3.插入運算
void insertlist(linklist head,datatype x,int i)
4.刪除運算
void deletelist(linklist head,int i)
單鏈表的操作
單鏈表是一種非常重要的資料結構,下面用c語言對單鏈表的操作做乙個簡單的總結 typedef struct nodenode,linklist 1 單鏈表的建立 建立乙個單鏈表,鍊錶裡面存放有十個偶數 2到20 有頭節點,頭節點不存放元素。linklist createlinklist return ...
單鏈表的操作
1.定義單鏈表的介面函式 ifndef linklist h define linklist h typedef int elemtype typedef struct node node node initnode bool addnode node head,elemtype data 頭插法 ...
單鏈表的操作
pragma once extern c list node,list link 頭插建立鍊錶 list link create list head int n 尾插法建立鍊錶 list link creat list tail int n 獲取長度 int get list length list...