單鏈表的操作

2021-07-12 04:37:59 字數 1067 閱讀 6841

資料結構:

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...