题目
代码
执行用时:40 ms, 在所有 Python3 提交中击败了54.80% 的用户
内存消耗:16.1 MB, 在所有 Python3 提交中击败了45.45% 的用户
通过测试用例:28 / 28
class Solution:
def reverseList(self, head: ListNode) -> ListNode:
ans=None
pre=head
while head:
if pre==head:
ans=head
head=head.next
pre.next=None
else:
next=head.next
head.next=pre
pre=head
ans=head
head=next
return ans
【方法2】递归
执行用时:40 ms, 在所有 Python3 提交中击败了54.80% 的用户
内存消耗:20.8 MB, 在所有 Python3 提交中击败了5.11% 的用户
通过测试用例:28 / 28
class Solution:
def visit(self,root):
if not root or not root.next:
return root
newRoot=self.visit(root.next)
root.next.next=root
root.next=None
return newRoot
def reverseList(self, head: ListNode) -> ListNode:
return self.visit(head)