<LeetCode 문제>
https://leetcode.com/problems/reverse-linked-list-ii/
Reverse Linked List II - 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
인덱스 m에서 n까지를 역순으로 만드는 문제입니다. 이때, 인덱스는 0이 아닌 1부터 시작합니다.
<풀이>
# 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: Optional[ListNode], left: int, right: int) -> Optional[ListNode]:
if not head or left==right:
return head
root = start = ListNode(None)
root.next = head
#start, end 지정
for _ in range(left-1):
start = start.next
end=start.next
for _ in range(right-left):
tmp, start.next, end.next = start.next, end.next, end.next.next
start.next.next = tmp
return root.next
<학습내용>
1.
<학습이 필요한 내용>
1.
'Algorithm > 파이썬 알고리즘 인터뷰 스터디' 카테고리의 다른 글
| [스택, 큐] 21 중복 문자 제거(Remove Duplicate Letters) - 작성중 (0) | 2021.08.16 |
|---|---|
| [스택, 큐] 20 유효한 괄호(Valid Parentheses) (0) | 2021.08.10 |
| [연결리스트] 18 홀짝 연결 리스트(Odd Even Linked List) (0) | 2021.08.09 |
| [연결리스트] 17 페어의 노드 스왑(Swap Nodes in Pairs) (0) | 2021.08.09 |
| [연결리스트] 16 두 수의 덧셈(Reverse Linked List) (0) | 2021.08.09 |