链接
思路先把两个list串起来成一个list,再将引入一个数组排序,排完序之后把原list赋值为数组的顺序
代码
class Solution {
public:
ListNode* mergeTwoLists(ListNode* list1, ListNode* list2) {
if(list1==NULL) return list2;
else if(list2==NULL) return list1;
else{
ListNode* start = list1;
while(start->next){
start = start->next;
}
start->next=list2;
start = list1;
vector array;
while(start){
array.push_back(start->val);
start = start->next;
}
sort(array.begin(),array.end());
start = list1;
int num = 0;
while(start){
start->val = array[num];
start = start->next;
num++;
}
return list1;
}
}
};
思考
收到上一道题影响一心想如何写一个链表排序,耽误了好久也没写对,下次遇见排序先引入数组,报错了再琢磨链表。



