考研資料結構筆記 單鏈表

2021-09-26 14:48:20 字數 1313 閱讀 3915

//單鏈表結點定義

typedef struct lnodelnode; //定義單鏈表結點型別

//尾插法建立單鏈表

/* +------+--------+-----------+

|頭結點 |原有結點 |新節點的位置 |

+------+--------+-----------+

*/void createlistr(lnode *&c, int a, int n)

r->next = null; //c的尾結點指標域置為null,c建立完成

}//頭插法建立單鏈表

/* +------+-----------+--------+

|頭結點 |新節點的位置 |原有結點 |

+------+-----------+--------+

*/void createlistf(lnode *&c, int a, int n)

}//兩遞增單鏈表歸併成乙個遞增單鏈表

void mergelisttoincreasing(lnode *a, lnode *b, lnode *&c)else

}r->next = null;

if(p != null)

r->next = p;

if(q != null)

r->next = q;

}//兩遞增單鏈表歸併成遞減的單鏈表的演算法

void mergelisttodesending(lnode *a, lnode *b, lnode *&c)else

}//下面這些**與歸併成遞增鍊錶不同,不能像遞增鍊錶一樣直接拼接,需要仍需要乙個乙個插入,用頭插法

while(p != null)

while(q != null)

}//查詢並刪除結點

int findanddelete(lnode *c, int x)

if(p->next == null)

return 0;

else

}

注:

​ 在定義函式的時候,c語言的函式形參不能為定義如下:void func(int &a),也就是c語言不支援定義引用型別的形參,但是c++是支援的。在c語言如果想要傳引用型別的引數,需要在傳實參的時候加上『&』符號,如:func(&a);,使用c++,可以使得呼叫函式時更加方便。

​ 在測試上述**時要將副檔名改為.cpp

資料結構筆記 單鏈表

順序表 一.順序儲存結構 與對陣列的操作類似,並無太大新知識點,顧略去。二.鏈式儲存結構 單鏈表的儲存不連續,每個儲存單元既儲存資料元素,又儲存後繼元素的位址。因此,節點結構定義 templatestruct node 為了實現基本操作,建立模板 templateclass llist 單鏈表初始化...

天勤考研資料結構 單鏈表操作

定義單鏈表 typedef struct lnodelnode a b皆為有序鍊錶,合併排序到c中 頭插法 void merge lnode a,lnode b,lnode c else if q next null if p null if p next null if q null a b皆為有...

2023年考研資料結構複習 單鏈表

2020年考研資料結構複習 單鏈表 include include include include include malloc.h 單鏈表儲存結構 typedef struct lnode lnode,linklist 頭插法 void createlist l linklist l void c...