class Solution { public ListNode mergeTwoLists(ListNode l1, ListNode l2) { if(l1 == null){ return l2; } if(l2 == null){ return l1; } ListNode head = null; ListNode tmp = null; if(l1.val <= l2.val){ tmp = l1; head = l1; l1 = l1.next; } else { tmp = l2; head = l2; l2 = l2.next; } while(l1!=null && l2!=null){ if(l1.val <= l2.val){ tmp.next = l1; l1 = l1.next; } else { tmp.next = l2; l2 = l2.next; } tmp = tmp.next; tmp.next = null; } if(l1 != null){ tmp.next = l1; } if(l2 != null){ tmp.next = l2; } return head; }}