刚刚在Leetcode上刷到了这道题,于是我想起了一句经典名言:人在极度愤怒的情况下连简单题都做不出来!
这道题在Leetcode上标注的难度是简单题,但是思考了很久也很痛苦也没想明白是咋回事。最终在耗了我一个多小时候才思考明白,基本上就是一个递归的方式,结合了链表所以显得有些简单,哈哈!
思路:
题解:
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode() {}
* ListNode(int val) { this.val = val; }
* ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
class Solution {
public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
if(l1 == null){
return l2;
}
if(l2 == null){
return l1;
}
if(l1.val < l2.val){
l1.next = mergeTwoLists(l1.next,l2);
return l1;
}else{
l2.next = mergeTwoLists(l1,l2.next);
return l2;
}
}
}