class Solution:
def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode:
num1 = ""
num2 = ""
now = l1
while now:
num1 = str(now.val) + num1
now = now.next
now = l2
while now:
num2 = str(now.val) + num2
now = now.next
result = list(str(int(num1) + int(num2)))
answer = ListNode(result[0], None)
for i in range(1, len(result)):
temp = ListNode(result[i], answer)
answer = temp
return answer
문제
두개의 음이 아닌 정수를 표현하는 비어있지 않은 연결리스트가 주어진다. 하나의 숫자를 포함하고 있는 각각의 노드는 역순으로 저장되어있다. 두 정수를 더한 결과를 연결리스트의 형태로 반환한다. |
풀이 방법
두개의 연결노드를 생성한다. 각각 반복해서 연결노드에 숫자를 추가한다. 요소의 길이가 더 짧으면 먼저 추가를 끝낸다.
합이 9가 넘어가게 되면 올림을 통하여 다음 노드와 더하여 계산을 수행한다