博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
面试题 17:合并两个排序的链表
阅读量:6283 次
发布时间:2019-06-22

本文共 1537 字,大约阅读时间需要 5 分钟。

面试题 17:合并两个排序的链表

题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按 照递增排序的。

两个指针指向两个链表的头结点,取其中值小的作为新链表的头结点,和之前的结点串联,如此递归。

注意用例:

两个链表都为null;

其中一个链表为null;

两个链表有多个结点,有相同的值,不同的值。

package offer;/*面试题 17:合并两个排序的链表题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按 照递增排序的。*/public class Problem17 {    static class ListNode {        int data;        ListNode nextNode;    }    public static void main(String[] args) {        ListNode head1 = new ListNode();        ListNode second1 = new ListNode();        ListNode head2 = new ListNode();        ListNode second2 = new ListNode();        ListNode third2 = new ListNode();        head1.nextNode = second1;        head2.nextNode = second2;        second2.nextNode = third2;        head1.data = 1;        second1.data = 3;        head2.data = 2;        second2.data = 2;        third2.data = 2;        Problem17 test = new Problem17();        ListNode result = test.mergeList(head1, head2);        System.out.println(result.nextNode.nextNode.nextNode.nextNode.data);    }    public ListNode mergeList(ListNode head1, ListNode head2) {        if (head1 == null) {            return head2;        } else if (head2 == null) {            return head1;        }        ListNode mergeHead = null;        if (head1.data < head2.data) {            mergeHead = head1;            mergeHead.nextNode = mergeList(head1.nextNode, head2);        }else{            mergeHead = head2;            mergeHead.nextNode = mergeList(head1, head2.nextNode);        }        return mergeHead;    }}

 

 

转载于:https://www.cnblogs.com/newcoder/p/5797151.html

你可能感兴趣的文章
Vue实例初始化的选项配置对象详解
查看>>
PLM产品技术的发展趋势 来源:e-works 作者:清软英泰 党伟升 罗先海 耿坤瑛
查看>>
vue part3.3 小案例ajax (axios) 及页面异步显示
查看>>
浅谈MVC3自定义分页
查看>>
.net中ashx文件有什么用?功能有那些,一般用在什么情况下?
查看>>
select、poll、epoll之间的区别总结[整理]【转】
查看>>
CSS基础知识(上)
查看>>
PHP中常见的面试题2(附答案)
查看>>
26.Azure备份服务器(下)
查看>>
mybatis学习
查看>>
LCD的接口类型详解
查看>>
Spring Boot Unregistering JMX-exposed beans on shutdown
查看>>
poi 导入导出的api说明(大全)
查看>>
Mono for Android 优势与劣势
查看>>
将图片转成base64字符串并在JSP页面显示的Java代码
查看>>
js 面试题
查看>>
sqoop数据迁移(基于Hadoop和关系数据库服务器之间传送数据)
查看>>
腾讯云下安装 nodejs + 实现 Nginx 反向代理
查看>>
Javascript 中的 Array 操作
查看>>
java中包容易出现的错误及权限问题
查看>>