/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2) {
if(list1 == NULL)
{
return list2;
}
else if(list2 == NULL)
{
return list1;
}
struct ListNode* p = malloc(sizeof(struct ListNode));
struct ListNode* temp = p;
while(list1 != NULL && list2 != NULL)
{
if(list1->val <= list2->val)
{
temp->next = list1;
list1 = list1->next;
}
else
{
temp->next = list2;
list2 = list2->next;
}
temp = temp->next;
}
if(list1!=NULL) {
temp->next=list1;
}
if(list2!=NULL) {
temp->next=list2;
}
return p->next;
}
leetcode 21. 合并两个有序链表(C语言)(逐个插入新链表)
最新推荐文章于 2024-09-14 18:52:56 发布