LeetCode/Linked List

[Medium] 2. Add Two Numbers

Developer07 2022. 8. 25. 00:54

Leetcode 2번 문제는 순서가 거꾸로 된 2개의 연결 리스트를 더하는 문제이다. 연결 리스트의 각 노드 들은 한자리 숫자 만을 가지고 있다. 

public class Solution {
    public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
    
        ListNode sentinel = new ListNode(0);
        ListNode current = sentinel;
        int sum = 0;
        while (l1 != null || l2 != null) {
            sum /= 10;
            if (l1 != null) {
                sum += l1.val;
                l1 = l1.next;
            }
            if (l2 != null) {
                sum += l2.val;
                l2 = l2.next;
            }
            current.next = new ListNode(sum % 10);
            current = current.next;
        }
        if (sum / 10 == 1)
            current.next = new ListNode(1);
        return sentinel.next;
    }
}