본문 바로가기
python-algorithm

leetcode 92. Reverse Linked List II

by 무적김두칠 2023. 2. 17.

https://leetcode.com/problems/reverse-linked-list-ii/description/

 

Reverse Linked List II - LeetCode

Can you solve this real interview question? Reverse Linked List II - Given the head of a singly linked list and two integers left and right where left <= right, reverse the nodes of the list from position left to position right, and return the reversed lis

leetcode.com

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:
    def reverseBetween(self, head: ListNode, left: int, right: int-> ListNode:
        if not head or not head.next or left == right:
            return head
        
        # left-1 노드를 찾습니다.
        dummy = ListNode(-1)
        dummy.next = head
        prev = dummy
        for i in range(left - 1):
            prev = prev.next
        
        # right 노드를 찾습니다.
        cur = prev.next
        for i in range(left, right):
            next_node = cur.next
            cur.next = next_node.next
            next_node.next = prev.next
            prev.next = next_node
        
        return dummy.next
cs

사실 이건 제가 푼건 아니고.. ChatGPT에 넣고 풀어보랬는데 1초만에 주석달아서 풀어주네요.. 현타옵니다
저보다 훨씬 잘하는듯

반응형

'python-algorithm' 카테고리의 다른 글

leetcode 20. Valid Parentheses  (0) 2023.02.23
백준 9773 ID Key  (0) 2023.02.21
leetcode 328. Odd Even Linked List  (0) 2023.02.17
leetcode 24. Swap Nodes in Pairs  (0) 2023.02.17
leetcode 2. Add Two Numbers  (0) 2023.02.17

댓글