92.翻转链表
程序员文章站
2024-03-25 18:25:10
...
题目:
思路:
遍历链表,直到m位置,记录为新的头节点,即将开始翻转.
新增一个pre节点,每遍历一个m到n之间的节点,就将它提到头节点的前面.
代码:
class Solution:
def reverseBetween(self, head: ListNode, m: int, n: int) -> ListNode:
if not head:
return None
ans=ListNode(0)
item=ListNode(0)
ans.next=head
pre=ans
for i in range(1,m):
pre=pre.next
head=pre.next
for j in range(m,n):
item=head.next
head.next=item.next
item.next=pre.next
pre.next=item
return ans.next
上一篇: 网站内页PDF文件直接调用显示代码