😈博客主页:🐼大家好我叫张同学🐼
💖 欢迎点赞 👍 收藏 💗留言 📝 欢迎讨论! 👀
🎵本文由 【大家好我叫张同学】 原创,首发于 CSDN 🌟🌟🌟
✨精品专栏(不定时更新) 【数据结构+算法】 【做题笔记】【C语言编程学习】
☀️ 精品文章推荐
【C语言进阶学习笔记】三、字符串函数详解(1)(爆肝吐血整理,建议收藏!!!)
【C语言基础学习笔记】+【C语言进阶学习笔记】总结篇(坚持才有收获!)
| 前言 |
为什么要写
刷题笔记?
写博客的过程也是对自己刷题过程的梳理和总结,是一种耗时但有效的方法。
当自己分享的博客帮助到他人时,又会给自己带来额外的快乐和幸福。
(刷题的快乐+博客的快乐,简直是奖励翻倍,快乐翻倍有木有QAQ🙈)
| 题目内容 |
将两个升序链表合并为一个新的
升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
| 暴力求解法 |
我们可以将list2选为合并后待返回的链表,然后将list1中的结点合并到list2中。
| 算法图解 |

| 函数实现 |
struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2){
struct ListNode *cur1 = list1,*cur2 = list2;
//以list2作为最终合并后的链表,当list2为空表,直接返回list1
if(cur2 == NULL)
return list1;
while(cur1){
//先保存cur1的下个结点位置,避免丢失
struct ListNode* next1 = cur1->next,*next2 = cur2->next;
while(next2 && cur2->val < cur1->val

最低0.47元/天 解锁文章
944

被折叠的 条评论
为什么被折叠?



