将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的
目前想到的是先直接合并,然后冒泡排序:
LeetCode上的运行时间是3ms,内存消耗39.2MB
class Solution {
public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
// 若其中一个或全部链表为空
if(l1==null && l2!=null){
return l2;
}
if(l1!=null && l2==null){
return l1;
}
if(l1==null && l2==null){
return null;
}
// 遍历两个链表,分别求得长度和尾节点,时间复杂度为O(4n)
ListNode temp_l1 = l1;
ListNode temp_l2 = l2;
int length_l1 = 1;