合併兩個排序鍊錶

2021-07-29 18:14:45 字數 547 閱讀 1465

問題描述:

將兩個排序鍊錶合併為乙個新的排序鍊錶

樣例

給出1->3->8->11->15->null2->null, 返回1->2->3->8->11->15->null

解題思路:

遍歷第二個鍊錶的每乙個節點,然後與第乙個節點的第乙個節點比較,如果第二個鍊錶節點的值小於第乙個,就插入到第乙個煉表裡,如果大於就到下乙個節點。然後依次遍歷第二個鍊錶的每個節點,便利完成就合成乙個新的鍊錶。

實現**:

class solution

if(second==null)

while(first->next!=null&&second!=null)

else

}if(second==null)

if(first->next==null)}};

感悟:一開始是有這個思路的,但是**就是不知道咋寫,然後請教了別人,思路感覺很簡單,真正上去自己寫的時候,感覺就不一樣了,以後還得多寫。

合併兩個排序鍊錶

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。解題思路 將兩個鍊錶當中的對應元素的值進行比較,重新確定新鍊錶當中元素的位置。若第乙個鍊錶當前位置的值小於第二個鍊錶當前值,則不需要改變位置,第乙個鍊錶的指標...

合併兩個排序鍊錶

問題描述 將兩個排序鍊錶合併為乙個新的排序鍊錶 樣例 給出1 3 8 11 15 null,2 null,返回1 2 3 8 11 15 null。實現思路 首先建乙個新鍊錶,新鍊錶的頭結點就是l1或l2中較小的那乙個,若l1中的頭結點是小於l2的,那麼在比較完頭結點之後,再將l1中的下乙個節點與l...