题目 reverse linked list
描述
Reverse a singly linked list.
Example:
Input: 1->2->3->4->5->NULL
Output: 5->4->3->2->1->NULL
解法
c++ 慢慢
class Solution {
public:
ListNode* reverseList(ListNode* head) {
ListNode* curr = head;
ListNode* next = NULL;
ListNode* prev = NULL;
while (curr != NULL) {
next = curr->next;
curr->next = prev;
prev = curr;
curr = next;
}
return prev;
}
};
python
class Solution:
def reverseList(self, head):
“”"
:type head: ListNode
:rtype: ListNode
“”"
curr = head
prev = None
next = None
while curr:
next = curr.next
curr.next=prev
prev = curr
curr = next
return prev
本文详细解析了如何使用C++及Python实现链表的反转算法。通过实例输入1->2->3->4->5->NULL,展示其反转过程,输出为5->4->3->2->1->NULL。代码中提供了迭代方法,包括初始化当前节点、下一个节点和前一个节点,通过循环操作完成链表反转。
5255

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



