当前位置: 首页 > news >正文

Leecode之合并两个有序链表

一.题目及剖析

https://leetcode.cn/problems/merge-two-sorted-lists/description/

二.思路引入

用指针遍历两个链表并实时比较,较小的元素进行尾插,然后较小元素的指针接着向后遍历

三.代码引入

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/
struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2) {struct ListNode *newHead, *newTail, *l1, *l2;newHead = newTail = (struct ListNode*)malloc(sizeof(struct ListNode));l1 = list1;l2 = list2;if(list1 == NULL)return list2;if(list2 == NULL)return list1;while(l1 && l2){if(l1->val > l2->val){newTail->next = l2;newTail = newTail->next;l2 = l2->next;}else{newTail->next = l1;newTail = newTail->next;l1 = l1->next;}}if(l1)newTail->next = l1;if(l2)newTail->next = l2;return newHead->next;
}

四.扩展

当然,这道题的思路并不止一种,这种思路是一般方法,我们还可以用递归去写

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/struct ListNode* mergeTwoLists(struct ListNode* l1, struct ListNode* l2){//递归条件if(l1 == NULL) return l2;if(l2 == NULL) return l1;if(l1->val < l2->val){l1->next = mergeTwoLists(l1->next,l2);return l1;}else{l2->next = mergeTwoLists(l1,l2->next);return l2;}
}

http://www.lryc.cn/news/301325.html

相关文章:

  • 陶建国教授谈中西方文化的差异与交融
  • Ps:画笔选项
  • 嵌入式——Flash(W25Q64)
  • stm32:pwm output模块,记录一下我是用smt32,输出pwm波的记录--(实现--重要)
  • phpstrom创建thinkphp项目
  • 【Linux】线程同步
  • 如何在多头自注意力机制的交叉学习中引入对于物理、生理、心理世界客观规律的对照验证...
  • 智慧公厕:让智慧城市的公共厕所焕发“智慧活力”
  • vue导出word文档(图文示例)
  • 【C Primer Plus第六版 学习笔记】 第十七章 高级数据表示
  • 租用一个服务器需要多少钱?2024阿里云新版报价
  • python-产品篇-游戏-成语填填乐
  • 数据库数据加密的 4 种常见思路的对比
  • HCIA-HarmonyOS设备开发认证V2.0-IOT硬件子系统-PWM
  • 001kafka源码项目gradle报错UnsupportedClassVersionError-kafka-报错-大数据学习
  • 单片机学习笔记---直流电机驱动(PWM)
  • Scrum敏捷培训机构推荐
  • 《Go 简易速速上手小册》第5章:并发编程(2024 最新版)
  • python - 模块
  • 【Web】CTFSHOW java刷题记录(全)
  • 全球付汇业务的流程
  • ubuntu22.04@laptop OpenCV Get Started: 012_mouse_and_trackbar
  • 信息安全性测试
  • [HTML]Web前端开发技术26(HTML5、CSS3、JavaScript )JavaScript基础——喵喵画网页
  • 【Java】文件操作与IO
  • 开关电源电路主要元器件基础知识详解
  • - 项目落地 - 《选择项目工具的方法论》
  • 美国突然致敬中本聪
  • 精品springboot基于大数据的电脑主机硬件选购助手-可视化大屏
  • 全量和已占用字符集 、字符串统计