-
[리트코드] (LeetCode) 2번 Add Two Numbers 문제Problem Solving/LeetCode 2021. 7. 5. 17:18
파라미터로 두 연결 리스트의 head를 받고,
두 연결 리스트의 데이터를 더한 하나의 연결 리스트의 head를 반환하면 되는 문제다.
class Solution: def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode: nums1 = [] nums2 = [] while l1: nums1.append(l1.val) l1 = l1.next while l2: nums2.append(l2.val) l2 = l2.next nums1.reverse() nums2.reverse() n1 = ''.join(map(str, nums1)) n2 = ''.join(map(str, nums2)) n = int(n1) + int(n2) n = list(str(n)) n.reverse() n = list(map(int, n)) print(n) head = None tail = None for val in n: if not head: head = ListNode(val) tail = head else: tmp = ListNode(val) tail.next = tmp tail = tail.next return head
직관적으로 풀고 싶어서 풀이가 많이 길어졌는데..
개선의 여지가 상당히 많은 코드다.
'Problem Solving > LeetCode' 카테고리의 다른 글
[리트코드] (LeetCode) 21번 Merge Two Sorted Lists 문제 (0) 2021.07.05 [리트코드] (LeetCode) 20번 Valid Parentheses 문제 (0) 2021.07.05 [리트코드] (LeetCode) 15번 3Sum 문제 (0) 2021.07.05 [리트코드] (LeetCode) 1번 Two Sum 문제 (0) 2021.06.15 [리트코드] (LeetCode) 49번 Group Anagrams 문제 (0) 2021.06.14