Leetcode 2. Add Two Numbers (java), leetcodenumbers
Solution:
Class Solution {public ListNode addTwoNumbers (ListNode l1, ListNode l2) {ListNode l3 = null; boolean add = false; while (l1! = Null | l2! = Null) {// The sum of digits int plus; if (l1 = null) {plus = l2.val;} else if (l2 = null) {plus = l1.val ;} else {plus = l1.val + l2.val;} if (add) {plus ++; add = false;} // generate the node ListNode temp; if (plus> = 10) {temp = new ListNode (plus % 10); add = true;} else {temp = new ListNode (plus);} // splicing node ListNode l3Head = l3; if (l3 = null) {l3 = temp; if (add & (l1 = null | l1.next = null) & (l2 = Null | l2.next = null) {l3.next = new ListNode (1) ;}} else {while (l3Head. next! = Null) {l3Head = l3Head. next;} l3Head. next = temp; if (add & (l1 = null | l1.next = null) & (l2 = null | l2.next = null) {l3Head. next. next = new ListNode (1) ;}/// jump to the next if (l1 = null) {l2 = l2.next;} else if (l2 = null) {l1 = l1.next;} else {l1 = l1.next; l2 = l2.next ;}} return l3 ;}}
There are three ideas at the beginning:
Finally, we adopted the last idea.
Github address: https://github.com/CyanChan/Leetcode-Record