一、思路
二、源码
一、思路
创建一个新链表
两个链表比较,小于等于取下来尾插
循环结束条件为任意一个链表为空
最后将之剩下的链表直接尾插
二、源码
struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2){ if(list1 == NULL) return list2; if(list2 == NULL) return list1; struct ListNode *head = NULL,*tail = NULL; while(list1 && list2) { if(list1->val <= list2->val) { if(head == NULL) { head = tail = list1; } else { tail->next = list1; tail = tail->next; } list1 = list1->next; } else { if(head == NULL) { head = tail = list2; } else { tail->next = list2; tail = tail->next; } list2 = list2->next; } } if(list1) tail->next = list1; if(list2) tail->next = list2; return head; }
猜你喜欢
- 7天前梦中被追逐的心理分析与应对
- 7天前周公解梦解析梦见蛇的寓意
- 7天前梦中生日宴请宾客的深层寓意
- 7天前梦中战胜蛇的象征意义解析
- 7天前梦中牙齿脱落的多重心理暗示
- 7天前梦中家蛇遭击毙的寓意解析
- 4天前梦中被追逐的奔跑与心理隐喻
- 4天前梦见怀孕的心理暗示与解析
- 4天前梦中发断泪难止
- 4天前梦见杀猪的周公解梦解析
网友评论
- 搜索
- 最新文章
- 热门文章