C 頭插法尾插法建立單鏈表,合併兩個有序單鏈表

2021-10-11 03:05:15 字數 1188 閱讀 3241

a和b是兩個單鏈表(帶表頭結點),其中元素遞增有序。設計乙個演算法,將a和b歸

並成乙個按元素值非遞減有序的鍊錶 c,c由a 和b 中的結點組成。

#include

#include

using

namespace std;

typedef

struct lnode

lnode;

/**尾插法建立單鏈表

*/void

createlistr

(lnode *

&c,int a,

int n)

r->next=

null;}

/****************

頭插法建立單鏈表

*****************/

createlistf

(lnode *

&c,int a,

int n)

}void

merge1

(lnode* a,lnode* b,lnode *

&c)else

}// r->next=null;

if(p!=

null

)r->next=p;

if(q!=

null

)r->next=p;

}int

main()

;int b=

; lnode* head1=

new lnode;

createlistr

(head1,a,8)

; lnode* head2=

new lnode;

createlistr

(head2,b,7)

; lnode* p=head1-

>next;

while

(p) cout

>next;

while

(p) cout<"*************合併後***********"

merge1

(head1,head2,result)

; p=result-

>next;

while

(p)return0;

}

頭插法和尾插法建立單鏈表

頭插法和尾插法建立單鏈表 include using namespace std typedef int elemtype typedef struct lnode linklist 頭插法建表 從尾部乙個乙個往前插入 void createlisthead linklist l,elemtype ...

頭插法與尾插法建立單鏈表

單鏈表的建立一般主流分為兩種建立方式 頭插法和尾插法。頭插法1 建立頭節點,維護head指標 引用 來指向頭節點 2 newnode表示待插入節點,維護newnode指向新節點 3 case1 當鍊表為空時,即首次插入新節點,將head.next指向新插入節點,即head.next newnode ...

頭插法和尾插法建立單鏈表

頭插法建立單鏈表 include include typedef struct lnodenode,linklist linklist headinsert linklist 頭插法建立單鏈表 void output linklist 遍歷輸出 int main void 頭插法建立單鏈表 link...