【发布时间】:2021-06-27 01:43:01
【问题描述】:
我正在编写一个用于在 python 中反转链表的代码。 以下代码未通过测试用例:
class ListNode(object):
def __init__(self, val=0, next=None):
self.val = val
self.next = next
class Solution(object):
def reverseList(self, head)
prev, curr = None, head
while curr:
curr.next = prev
prev = curr
curr = curr.next
return prev
这段代码通过时:
class Solution(object):
def reverseList(self, head): # Iterative
prev, curr = None, head
while curr:
curr.next, prev, curr = prev, curr, curr.next
return prev
两者有什么区别?
【问题讨论】:
-
嗯,你可以看到哪些代码行被改变了,对吧?所以问题真的是“为什么会有所作为?”,是吗?
标签: python linked-list