剑指offer--合并两个排序的链表

原创 2017年04月23日 19:17:14

题目描述
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。


AC代码:

/*
public class ListNode {
    int val;
    ListNode next = null;

    ListNode(int val) {
        this.val = val;
    }
}*/
public class Solution {

    public ListNode Merge(ListNode list1,ListNode list2) {
        ListNode list = new ListNode(0);
        ListNode cur = list;
        if ( list1 == null){
            return list2;
        }

        if (list2 == null){
            return list1;
        }

        while(list1 != null & list2 != null){
            if ( list1.val <= list2.val){
                list.next = list1;
                list = list.next;
                list1 = list1.next;
            }else{
                list.next = list2;
                list = list.next;
                list2 = list2.next;
            }
        }

        while(list1 != null){
            list.next = list1;
            list = list.next;
            list1 = list1.next;
        }

        while(list2 != null){
            list.next = list2;
            list = list.next;
            list2 = list2.next;
        }

        list.next = null;
        cur = cur.next;

        return cur;
    }
}
版权声明:本文为博主原创文章,未经博主允许不得转载。若需转载,请注明http://blog.csdn.net/qq_30091945 举报

相关文章推荐

剑指offer----合并两个排序的链表

package offer; /** * 输入两个单调递增的链表,输出两个链表合成后的链表, * 当然我们需要合成后的链表满足单调不减规则。 * @author liu * */ publi...

剑指offer----合并两个排序的链表

输入两个递增排序的链表,合并两个链表并使新链表中的节点仍然是按照递增排序的。 一、合并两个链表的过程(递归) (1)从合并两个链表的头节点开始    如果链表1的头节点的值小于链表2的头节点的值,则链...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

【剑指Offer】面试题17:合并两个排序的链表

一:题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 二:解题思路 我们的分析从合并链表的头指针开始。 链表1的头指针的值小于链表2的...

剑指Offer之合并两个排序的链表

题目描述: 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 (hint: 请务必使用链表。) 输入: 输入可能包含多个测试样例,输入以EOF结...

剑指Offer----面试题17:合并两个排序的链表

题目: 输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然按照递增排序。如下图所示: 方法一: 分析:创建新的链表3,每次比较链表1和2上相应的值,再链表3上依次创建新的结点,并...

《剑指Offer》面试题:合并两个排序的链表

题目:合并两个排序的链表下面程序中共有三个函数: 1)createList—————-创建链表的函数,在前几篇关于链表的博文均有涉及 2)printList—————–打印链表 3)merge2...

合并两个排序的链表(剑指offer)

合并两个排序的链表 参与人数:1527时间限制:1秒空间限制:32768K通过比例:27.96%最佳记录:0 ms|8552K(来自  牛客708854号) 题目描述 输...

剑指offer-面试题17.合并两个排序的链表

题目:输入两个递增的排序的链表,合并这两个链表并使新链表中的节点仍然是按照递增排序的。 例如链表1链表2合并为链表3. 1 List1:1->3->5->7 2 3 List2:2->4-...

剑指offer——两个合并排序的链表

题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结构点仍然是按照递增排序的。例如输入图中链表并使新链表中的结点仍然是按照递增排序的。例如图中的链表 分析:我们应该从两部分开始考虑一...

剑指offer 合并两个排序的链表

题目描述: 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 (hint: 请务必使用链表。)思路:首先新建一个链表,因为连个链表都是有序的,所以只需要...
  • s_h_r
  • s_h_r
  • 2016-03-13 10:07
  • 139
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)