# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = NoneclassSolution(object):defreverseBetween(self, head, m, n):"""
:type head: ListNode
:type m: int
:type n: int
:rtype: ListNode
"""
data_list =list()
p = head
while p:
data_list.append(int(p.val))
p = p.next
data_f = data_list[:m-1]
data_t = data_list[n:]
data_m = data_list[m-1:n]
data_m = data_m[::-1]
data = data_f + data_m + data_t
data = data[::-1]
res = ListNode(-1)for i in data:
tmp = ListNode(i)
tmp.next= res.next
res.next= tmp
return res.next
大佬1:看的我头都晕了,有空在加上注释
# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = NoneclassSolution(object):defreverseBetween(self, head, m, n):"""
:type head: ListNode
:type m: int
:type n: int
:rtype: ListNode
"""ifnot head:returnNone
cur, prev = head,Nonewhile m >1:
prev = cur
cur = cur.next
m, n = m -1, n -1
tail, con = cur, prev
while n:
third = cur.next
cur.next= prev
prev = cur
cur = third
n -=1if con:
con.next= prev
else:
head = prev
tail.next= cur
return head