2. Add Two Numbers

Evan Lee ㅣ 2023. 5. 27. 22:03

문제 

두개의 비어있지 않은 양수만을 표현하는 linked list들을 받게되는데, 각 숫자들은 뒤집힌 순서대로 저장되어 있으며 각 노드들은 하나의 숫자만 포함하고 있습니다. 두 숫자를 더해서 그 합을 linked list로 반환하세요. 그 숫자 자체가 0이 아닌이상 선행숫자에 0이 들어가면 안됩니다.

 

일단 문제를 자세히 읽어봐야했다. 단순히 배열 문제인줄 알고 접근했다가,  절대 풀 수가 없었다. 자료구조에 대한 무지가 이렇게 다가올줄은 몰랐다. 그래서 일단 linked list가 무엇을 말하는지 봤어야했다. 

 

 

 

조사

 

 

A linked list is an ordered, linear structure, similar to an array. Instead of items being placed at indices, however, they are connected through a chain of references, with each item containing a reference to the next item. There are benefits to using a linked list over an array, and benefits for using an array over a linked list. The two differ in the amount of memory they use and the speed of various tasks related to accessing, adding, and removing data.

"링크드 리스트는 배열과 유사한 순서가 있는 선형 구조입니다. 하지만 항목들은 인덱스에 배치되는 대신, 각 항목은 참조 체인을 통해 연결되며 다음 항목을 참조하는 참조를 포함합니다. 배열 대신 링크드 리스트를 사용하는 것에는 이점이 있으며, 배열 대신 배열을 사용하는 것에도 이점이 있습니다. 두 가지는 메모리 사용량과 데이터에 대한 접근, 추가 및 제거 작업의 속도 등에서 차이가 있습니다."

링크드 리스트는 서로 깊이 중첩된 객체들이다. 각 노드 객체에서 next 속성으로 다음 객체를 참조하면서 그 값들을 알아가야한다.

LeetCode에서 문제에 적혀있는 ListNode 함수다. 이를 통해서 문제를 풀어야하는데 재귀를 통해 해결한 분의 정답을 가져왔다. 

 

 

 

'Javascript > LeetCode' 카테고리의 다른 글

15. 3SUM  (0) 2023.06.13
11 - Container With Most Water  (0) 2023.06.01