剑指Offer:合并两个排序的链表【25】
剑指Offer:合并两个排序的链表【25】
题目描述
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
题目分析
每次都是比较箭头节点,把小节点连接到已经合并的链表之后,重复的执行此过程,最后如果那个链表已经走完,那就将另一个链表直接连接到合并的链表之后。
Java题解
常规解法
class Solution {public ListNode mergeTwoLists(ListNode l1, ListNode l2) {ListNode newList = new ListNode(0);ListNode curNode = newList;while(l1!=null&&l2!=null){if(l1.val<l2.val){curNode.next=l1;l1=l1.next;}else{curNode.next=l2;l2=l2.next;}curNode=curNode.next;}if(l1==null)curNode.next=l2;if(l2==null)curNode.next=l1;return newList.next;}
}
递归解法
public static ListNode Merge(ListNode list1,ListNode list2) {if(list1==null)return list2;else if(list2==null)return list1;ListNode MergeHead = null;if(list1.val<list2.val){MergeHead = list1;MergeHead.next = Merge(list1.next,list2);}else{MergeHead = list2;MergeHead.next = Merge(list1,list2.next);}return MergeHead;}
转载于:https://www.cnblogs.com/MrSaver/p/9214999.html
剑指Offer:合并两个排序的链表【25】相关推荐
- 剑指Offer——合并两个排序的链表
1.题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则. 2.代码实现 1 package com.baozi.offer; 2 3 /** 4 * ...
- 剑指 Offer合并两个排序的链表
题目描述 输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的. 示例1: 输入:1->2->4, 1->3->4 输出:1->1->2-> ...
- java listnode 合并链表_剑指offer:合并两个排序的链表(Java)
1.问题描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则. 2.思路 方法1:非递归方法 根据题目这个很类似排序中的外排过程,两个数组分别排好序,然后再 ...
- 剑指Offer25 合并两个排序的链表
剑指Offer 25. 合并两个排序的链表 剑指Offer 25. 合并两个排序的链表 这题是一道简单题,如果学习了数据结构当中的链表的话,可以很轻松就想出解题过程: /*** Definition ...
- 剑指offer-17.合并两个排序的链表
https://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337?tpId=13&tqId=11169&tPage= ...
- 剑指offer 合并2个排序的链表
题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则. 解决方案: 用递归的思想. /* public class ListNode {int val; ...
- python数据结构剑指offer-合并两个排序的链表
合并两个排序的链表 描述 输入两个递增的链表,单个链表的长度为n,合并这两个链表并使新链表中的节点仍然是递增排序的. 数据范围: 0 \le n \le 10000≤n≤1000,-1000 \le ...
- 剑指offer25-合并两个排序的链表
问题描述 输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的. 示例1: 输入:1->2->4, 1->3->4 输出:1->1->2-> ...
- 【剑指Offer专题】链表系列:从尾到头打印链表、反转链表、回文链表、合并两个排序的链表(C++和Python实现)...
关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 剑指Offer(三):从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每 ...
- 《LeetCode力扣练习》剑指 Offer 25. 合并两个排序的链表 Java
<LeetCode力扣练习>剑指 Offer 25. 合并两个排序的链表 Java 一.资源 题目: 输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的. 示例1: ...
最新文章
- Android存储方式之SQLite
- IDEA只修改代码提示为不区分大小写
- css不换行属性_CSS强制不换行的whitespace:nowrap的坑,你会填么?
- 伪装 php 版本号,linux伪装隐藏Nginx,PHP版本号提升服务器安全性
- 基于java百货中心供应链管理系统(含源文件)
- 深入剖析WebRTC事件机制之Sigslot
- ArcGIS安装之后无法运行的几个常见问题的终极解决方法
- Ubuntu上的论文翻译软件 --- 兰译
- 2022年G2电站锅炉司炉试题及在线模拟考试
- 引爆Spark大数据引擎的七大工具
- 怎样批量修改图片大小?
- html字体换成白色,css怎么把字体颜色改为白色
- 数据库银行业务基础知识
- 肠道核心菌属——巨单胞菌属(Megamonas)
- 【转载】为什么要用50欧姆?
- 数学建模之拉依达准则
- 基于stm32的音乐喷泉设计
- 细心的观察,耐心的倾听
- 【黄啊码】什么是php-fpm?
- 工作流(审批业务、流程)设计关键
热门文章
- 算法:程序设计之并查集
- 网络爬虫:采用“负载均衡”策略来优化网络爬虫
- Oracle rollup 关键字用法简介.
- Codeforces Round #596 (Div. 2)(第三场)
- mfc调取摄像头显示并截图_前摄后录,让行车安全再次提升:70迈智能后视镜后摄像头体验...
- was更换java版本,WAS如何更换JDK
- 5 项大奖,70 项满分!阿里云全方位引领云原生技术升级
- vs中imshow函数报错_Win7下VS2010中配置Opencv2.4.4的方法(32位和64位都有效)(亲测成功)...
- Python中函数的介绍以及用法
- linux 系统时间 硬件时间,linux 设置系统时间和硬件时间