一直在為考試而學(xué)習(xí),但我不明白為什么下面的解決方案有效,它只為 curr.next 節(jié)點(diǎn)賦值,但是 curr.current 的值在哪里?哪位好心人能解釋一下。謝謝!問(wèn)題:給你兩個(gè)非空鏈表,代表兩個(gè)非負(fù)整數(shù)。數(shù)字以相反的順序存儲(chǔ),它們的每個(gè)節(jié)點(diǎn)都包含一個(gè)數(shù)字。將兩個(gè)數(shù)字相加并將其作為鏈表返回。您可以假設(shè)這兩個(gè)數(shù)字不包含任何前導(dǎo)零,除了數(shù)字 0 本身。例子:輸入:(2 -> 4 -> 3) + (5 -> 6 -> 4)輸出:7 -> 0 -> 8解釋?zhuān)?42 + 465 = 807。/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ListNode dummyHead = new ListNode(0); ListNode p = l1, q = l2, curr = dummyHead; int carry = 0; while (p != null || q != null) { int x = (p != null) ? p.val : 0; int y = (q != null) ? q.val : 0; int sum = carry + x + y; carry = sum / 10; curr.next = new ListNode(sum % 10); curr = curr.next; if (p != null) p = p.next; if (q != null) q = q.next; } if (carry > 0) { curr.next = new ListNode(carry); } return dummyHead.next; }}
需要對(duì) ListNode 解決方案的解釋
繁星點(diǎn)點(diǎn)滴滴
2021-09-03 17:05:37