zoukankan      html  css  js  c++  java
  • 合并排序的链表 17

    总结

       

    递归

       

    比较两个链表当前节点的大小,将小的放入结果链表中

       

    递归基石节点为空,返回另一个链表

       

    package mergeSortedList17;

       

    public class MergeSortedList17 {

    static void printList(ListNode headNode){

    if (headNode.nextNode==null) {

    System.out.println(headNode.data);

    }else {

       

    System.out.print(headNode.data+"-->");

    }

    while (headNode.nextNode!=null) {

    headNode=headNode.nextNode;

    if (headNode.nextNode==null) {

    System.out.println(headNode.data);

    }else {

       

    System.out.print(headNode.data+"-->");

    }

    }

       

    }

    public static void main(String[] args) {

    ListNode head1=new ListNode();

    head1.data=1;

    ListNode l11=new ListNode();

    l11.data=2;

       

    head1.nextNode=l11;

    l11.nextNode=null;

       

    ListNode head2=new ListNode();

    head2.data=2;

    ListNode l21=new ListNode();

    l21.data=3;

       

    head2.nextNode=l21;

    l21.nextNode=null;

       

    ListNode resultNode=merge(head1, head2);

    printList(resultNode);

    }

    static ListNode merge(ListNode head1,ListNode head2){

    if (head1==null) {

    return head2;

    }else if (head2==null) {

    return head1;

    }

    ListNode resultListHead=null;

    if (head1.data<head2.data) {

    resultListHead=head1;

    resultListHead.nextNode=merge(head1.nextNode,head2);

    }else {

    resultListHead=head2;

    resultListHead.nextNode=merge(head1, head2.nextNode);

    }

    return resultListHead;

       

       

    }

    }

    class ListNode{

    int data;

    ListNode nextNode;

    }

  • 相关阅读:
    初级程序员面试不靠谱指南(三)
    [细节决定B度]之回首一瞥cout<<"Hello,world"<<endl;
    20110310日记wmh
    SliverLight 控件属性的赋值方式
    20110309wmh日记
    20110308wmh日记
    20110307wmh日记
    STOAdiary20110314完成的任务
    20110313wmh日记
    20110311wmh日记
  • 原文地址:https://www.cnblogs.com/keedor/p/4357017.html
Copyright © 2011-2022 走看看