实现一个函数,将给定的单链表逆转
时间: 2024-09-18 11:14:08 浏览: 50
PTA习题:数据结构与算法题目集1
在编程中,反转单链表是一个常见的操作,通常会递归或迭代的方式实现。这里我将提供一种基于迭代的Python代码示例:
```python
# 定义链表节点
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def reverseList(head):
# 初始化两个指针,prev表示前一个节点,curr表示当前节点
prev = None
curr = head
# 遍历整个链表
while curr is not None:
# 记录当前节点的下一个节点
next_node = curr.next
# 将当前节点指向prev
curr.next = prev
# 移动指针到下一个节点
prev = curr
curr = next_node
# 返回新的头节点,即原链表的尾部
return prev
```
这个函数接受一个链表的头节点作为输入,通过改变节点之间的连接,使得原来的顺序变成反向。
阅读全文