合併兩個排序的鍊錶 鍊錶 遞迴

2021-08-22 03:29:07 字數 614 閱讀 1273

題目描述

輸入兩個單調遞增的鍊錶,輸出兩個鍊錶合成後的鍊錶,當然我們需要合成後的鍊錶滿足單調不減規則。

思路分析

用遞迴思想,依次將兩個鍊錶的每個元素遞迴對比後實現,注意此題考查**的魯棒性,故判斷條件不能少!

/*function

listnode

(x)*/

function

merge

(phead1, phead2)

else

if(phead2 == null)

var result = {};

if(phead1.val < phead2.val) else

return result;

}

function

merge

(phead1, phead2)

else

head=head.next;

}if(phead1!=null)

if(phead2!=null)

return phead.next;

}

鍊錶問題 合併兩個排序鍊錶

題目 輸入兩個遞增排序的鍊錶,合併這兩個排序鍊錶,使得合併之後的鍊錶仍然使遞增排序的。分析 即是歸併排序中的歸併操作,有兩種具體的實現 1 使用遞迴的方法,2 迭代版本,逐個合併鍊錶。實現如下 struct listnode 遞迴版本 listnode merge listnode phead1,l...

合併兩個排序鍊錶

struct listnode class solution else while pstart1 null pstart2 null plast next pstart1 plast pend1 pend1 pend1 next pstart1 pend1 else plast next psta...

合併兩個排序鍊錶

描述 將兩個排序鍊錶合併為乙個新的排序鍊錶樣例 給出1 3 8 11 15 null,2 null,返回1 2 3 8 11 15 null。解題思路 將兩個鍊錶當中的對應元素的值進行比較,重新確定新鍊錶當中元素的位置。若第乙個鍊錶當前位置的值小於第二個鍊錶當前值,則不需要改變位置,第乙個鍊錶的指標...