[アルゴリズム]逆順接続リストII
4571 ワード
逆順接続リストII
本を解く
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
class Solution:
def reverseBetween(self, head: ListNode, m: int, n: int) -> ListNode:
if not head or m==n:
return head
root = start = ListNode(None)
root.next= head
# start, end 지정
for _ in range(m-1):
start = start.next
end = start.next
# 반복하면서 노드 차례대로 뒤집기
for _ in range(n - m):
tmp = start.next
start.next = end.next
end.next = end.next.next
start.next.next = tmp
return root.next
リストに必要な部分だけを作って、リストに基づいてリンクリストを作成することができますが、これは定式解ではないので、本の中の解を参考にしました.重要なのは、本の絵を通じてどのように行うかを理解することです.Reference
この問題について([アルゴリズム]逆順接続リストII), 我々は、より多くの情報をここで見つけました https://velog.io/@injoon2019/알고리즘-역순-연결-리스트-IIテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol