zoukankan      html  css  js  c++  java
  • 剑指Offer:合并两个排序的链表【25】

    剑指Offer:合并两个排序的链表【25】

    题目描述

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

    题目分析

      双指针问题的经典案例,合并有序链表。

      上下两个指针,谁小谁先走,先走的是较小的蓝1,结果集新增蓝1.

      上下两个指针,谁小谁先走,先走的是较小的紫2,结果集新增紫2.

     

      按照这个逻辑接着往后走即可!这个逻辑还是相对比较清晰的。

    Java题解

     public ListNode Merge(ListNode list1,ListNode list2) {
            ListNode head1 = list1;
            ListNode head2 = list2;
            ListNode newHead = new ListNode(-1);
            ListNode ptr = newHead;
            while (head1!=null&&head2!=null){
                if(head1.val<=head2.val){
                    ptr.next = head1;
                    head1 = head1.next;
                }else{
                    ptr.next = head2;
                    head2 = head2.next;
                }
                ptr = ptr.next;
            }
            if(head1==null)
                ptr.next = head2;
            else
                ptr.next = head1;
            return newHead.next;
        }
    

      

      

  • 相关阅读:
    数组元素循环右移
    备忘录模式笔记
    调度算法(笔记)
    meta http-equiv的用法(转)
    常用Maven插件介绍(下)(转)
    常用Maven插件介绍(上)(转)
    maven命令
    JDK并发包
    线程基础
    Jav堆排序
  • 原文地址:https://www.cnblogs.com/MrSaver/p/9214999.html
Copyright © 2011-2022 走看看