合并两个排序的链表

剑指offer,我要把所有的链表问题做一遍

其实这里合并链表和和并数组差不多吧,我感觉

假如说是从小往大排序,那么两个节点谁小,待插入指针就指向哪个节点,这里就是用MergeHead来指的,谁小,谁就作为MergeHead的next。

public class Main {
    Node Merge(Node head1,Node head2){
        if(head1==null){
            return head2;
        }else if(head2==null){
            return head2;
        }

        Node MergeHead=null;
        if(head1.data<head2.data){
            MergeHead=head1;
            MergeHead.next=Merge(head1.next,head2);
        }else{
            MergeHead=head2;
            MergeHead.next=Merge(head1,head2.next);
        }
        return MergeHead;
    }



}
class Node{
    int data;
    Node next;
    Node(int data){
        this.data=data;
        this.next=null;
    }
}

 

posted @ 2019-09-23 16:32  _SpringCloud  阅读(3)  评论(0编辑  收藏  举报  来源