(一、暴力法)
这道题最关键的一点就是当两个链表其中的一个为空时就可以直接连接另外一条链表的后面部分。
代码如下:
class Solution {
public ListNode mergeTwoLists(ListNode list1, ListNode list2) {
ListNode head=new ListNode();//定义头结点用来返回
ListNode list=head;//定义标记节点按照升序来连接对应节点
while(list1!=null && list2!=null){//当两个链表都不为空时
if(list1.val<list2.val){//按照升序连接相对应的节点
list.next=list1;
list1=list1.next;//将list1指针指向下一个结点
}else{
list.next=list2;
list2=list2.next;//将list2指针指向下一个结点
}
list=list.next;//将list指针指向下一个结点
}
if(list1==null){//当list1为空时
list.next=list2;//list连接list2的剩余部分
}
if(list2==null){//当list2为空时
list.next=list1;//list连接list1的剩余部分
}
return head.next;//返回头结点的下一结点(因为head头结点为空)
}
}
?
?
|