题目信息

image.png

问题解答

合并2个链表的变式
https://leetcode-cn.com/submissions/detail/117535952/

  1. function addTwoNumbers(l1: ListNode | null, l2: ListNode | null): ListNode | null {
  2. const dummyHead: any = {}
  3. let cur = dummyHead, carry = 0, num1 = 0, num2 = 0
  4. while(l1 || l2) {
  5. num1 = l1 ? l1.val : 0
  6. num2 = l2 ? l2.val : 0
  7. cur.next = new ListNode((num1 + num2 + carry) % 10)
  8. cur = cur.next
  9. carry = Math.floor((num1 + num2 + carry) / 10)
  10. if(l1) l1 = l1.next
  11. if(l2) l2 = l2.next
  12. }
  13. if(carry > 0) {
  14. cur.next = new ListNode(carry)
  15. }
  16. return dummyHead.next
  17. };