题目描述
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
分类:链表
解法1:解法的巧妙是建立了一个虚拟的头结点,从而避免了节点交替的问题。
建立虚拟头结点的,在链表的很多题目都有见到。
分类:链表
解法1:解法的巧妙是建立了一个虚拟的头结点,从而避免了节点交替的问题。
建立虚拟头结点的,在链表的很多题目都有见到。
/*
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}
*/
public class Solution {
public ListNode Merge(ListNode list1,ListNode list2) {
ListNode n1 = list1;
ListNode n2 = list2;
ListNode n = new ListNode(-1);
ListNode q = n;
while(n1!=null && n2!=null){
if(n1.val<n2.val){
n.next = n1;
n1 = n1.next;
}else if(n1.val>=n2.val){
n.next = n2;
n2 = n2.next;
}
n = n.next;
}
if(n1!=null){
n.next = n1;
}
if(n2!=null){
n.next = n2;
}
return q.next;
}
}