資料結構:
typedef int datatype;
typedef struct node
node,* linklist;
1、從尾到頭列印單鏈表
void tailtofrontprint(linklist head)
/*從尾到頭列印單鏈表*/
}
2、刪除乙個無頭單鏈表的非尾結點
void delnonetailnode(node *pos)
/*刪除乙個無頭單鏈表的非尾結點*/
node *del = pos->next;
pos->data = del->data;
pos->next = del->next;
free(del);
del = null;
}
3、在無頭單鏈表的乙個非頭結點前插入乙個結點
void insnonefrontnode(node *pos,datatype x)
/*在無頭單鏈表的乙個非頭結點前插入乙個結點*/
4、逆置/反轉單鏈表
void reversenode(linklist &head)
/*反轉單鏈表*/
head = front;
}
5、查詢單鏈表的中間節點,要求只遍歷一次鍊錶
node * findmidnode(linklist head)
/*查詢單鏈表的中間結點*/
slow = slow->next;
}return slow;
}
6、查詢單鏈表的倒數第k個結點,要求只遍歷一次鍊錶
node * findknode(linklist head, int k)
/*返回倒數第k個結點*/
else
}while (fast)
return slow;
}
單鏈表的操作
單鏈表是一種非常重要的資料結構,下面用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...