java合并有序链表

合并有序链表

http://www.nowcoder.com/questionTerminal/a479a3f0c4554867b35356e0d57cf03d

//话不多说,这道题应该比较简单,依次比较哪个元素小,就插入到新的链表后面,记得要向前移动,不要断链。最后还有判断两个合并的链表是否已经都遍历完了。
public ListNode mergeTwoLists (ListNode l1, ListNode l2) {
// write code here
ListNode p1 = l1;
ListNode p2 = l2;
ListNode l = new ListNode(6);
l.next = null;
ListNode q = l;
while(p1!=null&&p2!=null){
if(p1.val<=p2.val){
q.next=p1;
q = q.next;
p1 = p1.next;
q.next=null;
}else if(p1.val>p2.val){
q.next=p2;
q=q.next;
p2=p2.next;
q.next=null;
}
}
while(p1!=null){
q.next=p1;
p1=p1.next;
q=q.next;
}
while(p2!=null){
q.next=p2;
p2=p2.next;
q=q.next;
}
q.next=null;
return l.next;
}

全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务