單鏈表及其基本操作

2021-08-04 00:20:53 字數 1092 閱讀 4805

資料結構在**優化以及設計過程的地位不可忽視,資料結構裡包含很多內容,後續會一 一附上。此騙部落格主要談單鏈表,主要從其定義及建立,再完成乙個簡單的歸併練習進行描述:

在鍊錶儲存中,每個節點不僅包含所存元素的資訊,還包含元素之間邏輯關係的資訊。這麼說有點抽象,我們可以這麼理解:單鏈表中前驅結點包含後繼結點的位址資訊,這樣就可以通過前驅結點中的位址資訊來尋找後繼結點的位置。

}題目:a和b是兩個帶頭結點的單鏈表,其中元素遞增有序。設計演算法,將a和b歸併成乙個按元素值遞增的有序鍊錶c,c由a與b中的結點組成。

【分析】a、b中元素遞增有序,要使歸併後的c依然遞增有序。可以從a,b中挑出最小的元素插入c的尾部。當a,b中所有的元素都插入c時,c一定遞增有序。我們只需要

找出a,b中最小的元素

從a,b的開始結點中選取乙個較小的插入c的尾部

由於a與b中元素長度可能不一致,我們只需要將剩下的元素(依然遞增)插入c的尾部即可

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

} while(p !=

null)

while(q !=

null)

}

**執行截圖

單鏈表基本操作

include include include include includeusing namespace std typedef struct node node,plinklist plinklist createfromhead node pstnode node malloc sizeof...

單鏈表基本操作

單鏈表的初始化,建立,插入,查詢,刪除。author wang yong date 2010.8.19 include include typedef int elemtype 定義結點型別 typedef struct node node,linkedlist 單鏈表的初始化 linkedlist...

單鏈表基本操作

include using namespace std define namelenth 20 define ok 0 define error 1 typedef struct flagnode node 生成結點 inline node newnode 銷毀化煉表 void destroylin...