leetcode链接:https://leetcode-cn.com/problems/he-bing-liang-ge-pai-xu-de-lian-biao-lcof/
输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。
示例1:
输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4
解题思路:使用一个头节点指向新排序的链表,分别从两个链表的头节点开始,比较这两个链表当前节点的大小,依次加入到 排序链表,最后将两个链表没有遍历结束的那个全部加入到新链表,返回排序后链表的头节点即可。
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
class Solution {
public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
ListNode head = new ListNode(-1);
ListNode node = head;
while(l1 != null && l2 != null){
if(l1.val <l2.val){
node .next = l1;
l1 = l1.next;
}else{
node.next = l2;
l2 = l2.next;
}
node = node.next;
}
node.next = (l1==null)?l2:l1;
return head.next;
}
}