合并两个有序链表--力扣

embedded/2024/9/23 4:31:39/

题目如下:

              将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 

示例如下:

示例 1:

输入:l1 = [1,2,4], l2 = [1,3,4]
输出:[1,1,2,3,4,4]

示例 2:

输入:l1 = [], l2 = []
输出:[]

示例 3:

输入:l1 = [], l2 = [0]
输出:[0]

思路解析:

本代码先是利用变量获取到链表的个数,然后分别利用两个指针分别访问两个链表里面的值然后进行比较把较小的值放到建立的哨兵位后面,然后让tmp(和哨兵位同时创建的指针)指向哨兵位的位置free哨兵位返回tmp即可。

代码解析:

struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2) 
{struct ListNode* p1, *p2;struct ListNode* linode1 = list1;struct ListNode* linode2 = list2;struct ListNode* head1, * tmp;tmp = head1 = (struct ListNode*)malloc(sizeof(struct ListNode));int n = 0;int m = 0;while (linode1 != NULL){linode1 = linode1->next;n++;}while (linode2 != NULL){linode2 = linode2->next;m++;}linode1 = list1;linode2 = list2;int x = m + n;while (x--){if (linode1 == NULL){p2 = linode2->next;linode2->next = tmp;tmp = linode2;linode2 = p2;}else if (linode2== NULL){p1 = linode1->next;linode1->next = tmp;tmp = linode1;linode1 = p1;}else if (linode1->val < linode2->val){p1 = linode1->next;linode1->next = tmp;tmp = linode1;linode1 = p1;}else{p2 = linode2->next;linode2->next = tmp;tmp = linode2;linode2 = p2;}}free(head1);return tmp;}}


http://www.ppmy.cn/embedded/98517.html

相关文章

VSCode配置ssh免密连接远程服务器

我配置了免密设置(Windows利用ssh免密码登录Linux)&#xff0c;git bash已经能够正常连接了&#xff0c;但是vscode还是不行&#xff0c;很奇怪。 VSCode报错信息&#xff1a; [17:55:50.360] SSH Resolver called for "ssh-remote106.52.2.19", attempt 5, (Recon…

VAuditDemo常规漏洞

VAuditDemo常规漏洞 一、留言类功能漏洞 messageDetail.php - 存在数字型SQL注入&#xff0c;反射型XSS SQL注入 sqlwaf修改措施 反射型XSS messageSub.php search.php - 存在反射型xss 二、用户操作类漏洞 1、登录功能 logCheck.php - 空验证码绕过漏洞 2、编辑用户信息类 upd…

人脸识别设计

总体思路 人脸识别使用的算法思路为&#xff1a;首先&#xff0c;定位一张图像中所有的人脸位置&#xff1b;其次&#xff0c;对于同一张脸&#xff0c;当光线改变或者朝向方位改变时&#xff0c;算法还能判断是同一张脸&#xff1b;然后找到每一张脸不同于其他脸的独特之处&a…

学生党运动耳机推荐都有哪些?五大适合学生党使用的运动耳机推荐

在天气比较舒适的时候&#xff0c;不少朋友喜欢骑车出行了&#xff0c;我自己没事也喜欢去公园散步、骑车&#xff0c;外出途中有音乐相伴那是最好不过了。我使用过降噪耳机、骨传导耳机、传统入耳式有线耳机等&#xff0c;各种耳机的使用体验差异相差不大&#xff0c;不过有一…

salesforce如何导出字段名称和api name的对应关系

在 Salesforce 中&#xff0c;如果你想导出某个对象的字段名称及其对应的 API 名称&#xff0c;你可以通过以下几种方法来实现&#xff1a; 方法一&#xff1a;使用 Salesforce Schema Builder 打开 Schema Builder: 进入 Salesforce 后&#xff0c;导航到 Setup&#xff08;设…

微信小程序开发时数据是否是双向数据绑定的

在微信小程序开发中&#xff0c;数据绑定机制允许开发者将应用程序中的数据模型&#xff08;在JavaScript中定义的变量和对象&#xff09;与用户界面&#xff08;UI&#xff09;元素直接关联起来。关于微信小程序是否支持双向数据绑定&#xff0c;可以从以下几个方面进行说明&a…

Spring Mybatis拦截器配合logback打印完整sql语句

在项目开发与维护过程中&#xff0c;常常需要对程序执行的sql语句&#xff0c;进行观察和分析。但是项目通常默认会使用org.apache.ibatis.logging.stdout.StdOutImpl日志配置&#xff0c;该配置是用System.out.println打印的日志&#xff0c;导致只能将执行语句打印到控制台&a…

误闯机器学习(第一关-概念和流程)

以下内容&#xff0c;皆为原创&#xff0c;实属不易&#xff0c;请各位帅锅&#xff0c;镁铝点点赞赞和关注吧&#xff01; 好戏开场了。 一.什么是机器学习 机器学习就是从数据中自动分析获取模型&#xff08;总结出的数据&#xff09;&#xff0c;并训练模型&#xff0c;去预…