** 思路:定义一个头指针用来创建一个新链表,并且判断l1,l2是否为NULL要写在前面 **
/*
时间:2020/08/10
*/
`
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
struct ListNode* mergeTwoLists(struct ListNode* l1, struct ListNode* l2){
struct ListNode*head=(struct ListNode*)malloc(sizeof( struct ListNode));
struct ListNode*t=head;
while(l1!=NULL||l2!=NULL){
if(l1==NULL){
t->next=l2;
l2=l2->next;
}
else if(l2==NULL){
t->next=l1;
l1=l1->next;
}
else if(l1->val<l2->val){
t->next=l1;
l1=l1->next;
}
else if(l1->val>=l2->val){
t->next=l2;
l2=l2->next;
}
t=t->next;
}
return head->next;
}
``