原题链接:Reverse Linked List
题目内容:
Reverse a singly linked list.
Example:
Input: 1->2->3->4->5->NULL
Output: 5->4->3->2->1->NULL
Follow up:
A linked list can be reversed either iteratively or recursively. Could you implement both?
题目翻译:
使用两种方法逆置链表,递归和迭代
Python 迭代
class Solution(object):
def reverseList(self, head):
"""
:type head: ListNode
:rtype: ListNode
"""
res = None
while head:
temp = head
head = head.next
temp.next = res
res = curr
return res
Python 递归
def reverseList(self, head):
"""
:type head: ListNode
:rtype: ListNode
"""
return self._reverse(head)
def _reverse(self, node, last=None):
if not node:
return last
n = node.next
node.next = last
return self._reverse(n, node)
链表逆置双解法

本文详细介绍了链表逆置问题的两种解决方案,包括迭代和递归方法,并提供了Python实现代码,帮助读者深入理解链表操作的核心概念。
561

被折叠的 条评论
为什么被折叠?



