题解 | #合并两个排序的链表#

合并两个排序的链表

http://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337

获取节点的值,进行排序,之后重新构建链表,注意构建链表时,引入第三变量。

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

    ListNode(int val) {
        this.val = val;
    }
}*/
import java.util.ArrayList;
import java.util.Collections;
public class Solution {
    public ListNode Merge(ListNode list1,ListNode list2) {
      if (list1 == null && list2 == null) {return  null;}
        if (list1 == null && list2 != null) {return  list2;}
        if (list1 != null && list2 == null) {return  list1;}
        ArrayList<Integer> list = new ArrayList<>();

        while (list1 != null) {
            list.add(list1.val);
            list1 = list1.next;
        }
        while (list2 != null) {
            list.add(list2.val);
            list2 = list2.next;
        }
        Collections.sort(list);



//        ListNode result = null;
        ListNode result = new ListNode(list.get(0));
        ListNode re = result;

        for (int i = 1; i < list.size(); i++) {
            ListNode node = new ListNode(list.get(i));
            result.next = node;
            result = result.next;
        }


//        for (Integer integer : list) {
//            ListNode node = new ListNode(integer);
//            result = node;
//            result = result.next;
//        }

        return re;

    }
}

全部评论

相关推荐

牛客刘北:如果暑期实习是27届的话,你要晚一年才会毕业,企业为什么会等你呢?要搞清时间逻辑呀!27届现在实习只能是在暑假实习,这是日常实习,不是暑期实习。所以多去投日常实习吧,暑期实习肯定不会要你的
点赞 评论 收藏
分享
宇算唯航:目测实缴资本不超100W的小公司
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务