코딩테스트
파이썬 알고리즘 - 역순 연결 리스트
Gogozzi
2022. 5. 15. 14:36
반응형
문제
연결 리스트를 뒤집어라
입력
1->2->3->4->5->NULL
출력
5->4->3->2->1->NULL
작성한 코드
def reverseList(head):
node, prev = head, None
while node: # 1 2 3
next = node.next # 2 3
node.next = prev # Null 1
prev = node # 1 2
node = next # 2 3
return prev
책에 있는 코드
def reverseList(self, head) -> ListNode:
# SOL 1) Recursive Way
def reversef(node, prev=None):
if not node:
# node가 비어있는 경우
return prev
next, node.next = node.next, prev
return reversef(next, node)
return reversef(head)
문제 링크
https://leetcode.com/problems/reverse-linked-list/
Reverse Linked List - LeetCode
Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
leetcode.com
회고
그나마 이해하기 쉬웠다. 재귀함수로 풀려있는 풀이방법은 이해하기 조금 어려웠다.
반응형