合併兩個排序的鍊錶

2021-09-11 07:18:34 字數 503 閱讀 3902

這是乙個比較簡單的問題,但是在解答過程中,出現的堆疊溢位,後來發現是因為兩個鍊錶都為空的時候,返回的值應為空,而我沒有處理這種情況。

**如下:

/*struct listnode

};*/

class solution

if(list1==null && list2!=null)

else

if(list1!=null && list2==null)

/listnode * list=null;//中間變數

listnode* head=list;//返回值

if(list1->val<=list2->val)

else

while(list1!=null && list2!=null)

else

}while(list1!=null)

while(list2!=null)

list->next=null;

return head;}};

合併兩個排序鍊錶

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。解題思路 遍歷第二個鍊錶的每乙個節點,然後與第乙個節點的第乙個節點比較,如果第二個鍊錶節點的值小於第乙個,就插入到第乙個煉表裡,如果大於就到下乙個節點。...