leetcode:21. 合并两个有序链表

一、题目

 

函数原型:

struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2)

二、思路

合并两个有序链表为一个新的升序链表,只需要遍历两个有序链表并比较结点值大小,依次将较小的结点尾插到新链表即可。

三、代码

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/
struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2){struct ListNode *newhead=NULL;//新链表struct ListNode *tail=NULL;//新链表尾指针struct ListNode *cur1=list1;//遍历指针1struct ListNode *cur2=list2;//遍历指针2while(cur1&&cur2){if(cur1->val<=cur2->val)//选取较小结点尾插{if(tail==NULL)//尾指针为空,先要将插入的结点作为头结点{newhead=tail=cur1;}else{tail->next=cur1;tail=cur1;}cur1=cur1->next;}else{if(tail==NULL){newhead=tail=cur2;//尾指针为空,先要将插入的结点作为头结点}else{tail->next=cur2;tail=cur2;}cur2=cur2->next;}}if(cur1)//链表1还有剩余结点,尾插到新链表{if(tail==NULL){newhead=tail=cur1;}else{tail->next=cur1;}}if(cur2)//链表2还有剩余结点,尾插到新链表中{if(tail==NULL){newhead=tail=cur2;}else{tail->next=cur2;}}return newhead;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/174816.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

arcgis基础篇--实验

一、绘制带空洞的面要素 方法一&#xff1a;先绘制出一个面区域&#xff0c;然后在面上再绘制一个面区域代表面洞&#xff0c;两者位于同一个图层内&#xff0c;选中代表面洞的区域&#xff0c;选择【编辑器】-【裁剪】工具&#xff0c;将面裁剪出一个洞&#xff0c;随后删除代…

零代码秒集成打通小鹅通订单支付信息与 CRM合同接口

随着科技的不断进步&#xff0c;数字化已经成为了商业世界的核心。企业和组织必须紧跟数字化趋势&#xff0c;以适应快速变化的市场需求和消费者行为。企业需要做到快速反应市场的需求变化&#xff0c;从产品设计到产品生产&#xff0c;每一步都离不开技术人员对系统的操作&…

现货黄金职业交易员怎么使用技术分析?

职业的交易员每天要处理很多不同的信息&#xff0c;其中只一部分是涉及技术指标。在这一部分处理技术分析的时间里&#xff0c;只能再分出少之又少的时间给技术指标。那职业交易员会利用做技术指标做什么呢&#xff1f;下面我们就来讨论一下。 识别行情。技术指标的主要作用就是…

docker stop slow 解决

验证 NanoMQ stop slow 的问题 daemon 和非 daemon 两种方式 docker stop 都很慢 疑问是默认情况下&#xff0c;SIGTERM 会被处理。 模拟 docker 内发送 SIGTERM 信号 # The default signal for kill is TERM # pkill will send the specified signal (by defau…

VRRP(虚拟路由器冗余协议)标准协议工作机制与优势介绍

VRRP标准协议 文章目录 VRRP标准协议简介VRRP标准协议基本概念VRRP标准协议工作机制主备选举主备倒换非抢占模式抢占模式 VRRP标准协议技术优势VRRP典型组网单备份组主备备份多备份组负载分担 推荐阅读 VRRP标准协议简介 VRRP&#xff08;Virtual Router Redundancy Protocol…

(只需三步)Vmvare tools安装教程,实现与windows互通复制粘贴与文件拖拽

首先确保Ubuntu是联网的&#xff0c;如果连不上网可以参考我的这个联网教程&#xff0c;也很简单 &#xff08;只需三步&#xff09;虚拟机上vm的ubuntu不能联上网怎么办-CSDN博客 第一步&#xff1a;卸载之前的tools,确保没有残留 sudo apt-get autoremove open-vm-tools 第…

[文件读取]cuberite 文件读取 (CVE-2019-15516)

1.1漏洞描述 漏洞编号CVE-2019-15516漏洞类型文件上传漏洞等级⭐⭐⭐漏洞环境VULFOCUS攻击方式 描述: Cuberite是一款使用C语言编写的、轻量级、可扩展的多人游戏服务器。 Cuberite 2019-06-11之前版本中存在路径遍历漏洞。该漏洞源于网络系统或产品未能正确地过滤资源或文件路…

github 私人仓库clone的问题

github 私人仓库clone的问题 公共仓库直接克隆就可以&#xff0c;私人仓库需要权限验证&#xff0c;要先申请token 1、登录到github&#xff0c;点击setting 打开的页面最底下&#xff0c;有一个developer setting 这里申请到token之后&#xff0c;注意要保存起来&#xff…

MySQL join原理及优化

MySQL的JOIN原理是基于索引和算法的。在执行JOIN查询时&#xff0c;MySQL会根据连接字段上的索引来查找匹配的记录。 这种算法在链接查询的时候&#xff0c;驱动表会根据关联字段的索引进行查找&#xff0c;当在索引上找到了符合的值&#xff0c;再回表进行查询&#xff0c;也就…

EDA实验-----3-8译码器设计(QuartusII)

目录 一. 实验目的 二. 实验仪器 三. 实验原理及内容 1.实验原理 2.实验内容 四&#xff0e;实验步骤 五. 实验报告 六. 注意事项 七. 实验过程 1.创建Verilog文件&#xff0c;写代码 ​编辑 2.波形仿真 3.连接电路图 4.烧录操作 一. 实验目的 学会Verilog HDL的…

重点单位实现“码上监管” 打造基层互联网监管新模式

随着数字化时代的到来&#xff0c;二维码技术在各行各业得到了广泛应用。在基层治理中&#xff0c;“码上”监督作为一种新型的监督方式&#xff0c;具有便捷、高效、透明度高等优点&#xff0c;逐渐在基层治理中得到推广和应用。 “码上”监督是指通过二维码等技术手段&#x…

A. Weird Sum

题目链接 : Problem - 1648A - Codeforces 题面 : 题意 : 输入 n m (1≤n*m≤1e5) 和 n 行 m 列的矩阵 a&#xff0c;元素范围 [1,1e5]。 对于矩阵中的所有相同元素对&#xff0c;即满足 a[x1][y1] a[x2][y2] 的元素对 (a[x1][y1], a[x2][y2])&#xff0c;把 abs(x1-x2)…