🔍 알고리즘/Leetcode
[Python] Leetcode 206. Reverse Linked List (Easy)
탄치
2022. 7. 23. 20:06
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
LinkedList를 뒤집는 문제입니다.
재귀함수를 이용해 리스트를 타고 끝을 찾은 뒤 끝에서부터 재귀함수를 빠져나오면서 연결 방향을 거꾸로 뒤집었습니다.
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
class Solution:
def reverseList(self, head: ListNode) -> ListNode:
if(not head or not head.next):
return head
rest = self.reverseList(head.next)
head.next.next = head
head.next = None
return rest
input = ListNode(1,ListNode(2, ListNode(3,ListNode(4, ListNode(5,None)))))
# input = None
answer = Solution().reverseList(input)
while(answer):
print(answer.val)
answer = answer.next
728x90