linklist mergelinkedlist(linklist &l1,linklist &l2)
/*
*如果l2鍊錶為空,l1鍊錶不為空,直接返回l1的首位址
*/
else if(b
==null&&a!=null)
/*
*如果兩條鏈都為空,直接返回乙個空指標
*/
else if(a
==null&&
b==null)
/*
*否則l1與l2逐一比較,找到值較小的元素,插入到l中
*/
else
/*
*第二種情況:a指標所指的元素大於與b指標所指向的元素
*/
else if(a->
data
>
b->
data)
/*
*第三種情況:a指標所指的元素等於與b指標所指向的元素
*/
else
} if (a!=null) //如果a指向的單鏈表沒有插入完,則把剩餘的插入到l的後面
if (b!=null)//如果b指向的單鏈表沒有插入完,則把剩餘的插入到l的後面
return l;
} }
合併兩個鍊錶成乙個公升序鍊錶
linklist mergelinkedlist linklist l1,linklist l2 如果l2鍊錶為空,l1鍊錶不為空,直接返回l1的首位址 else if b null a null 如果兩條鏈都為空,直接返回乙個空指標 else if a null b null 否則l1與l2逐一比...
兩個公升序鍊錶合併成乙個公升序鍊錶
將兩個公升序鍊錶和並成乙個公升序序列 include includetypedef struct node linknode linknode creat linklist2 return h void printlink linknode h linknode mergelink linknode...
兩個公升序鍊錶合併為乙個公升序鍊錶
linklist mergeheaderlinklist linklist l,linklist p else while header2 next null if header1 next null printf 找到比 d大的值 d n header2 next data,header1 nex...