用户输入链表,使用反转链表函数在输出
时间: 2024-09-16 12:05:42 浏览: 43
LeetCode解题心得——反转链表(python)
用户输入链表后,如果需要使用反转链表的函数,你可以这样做:
首先,你需要定义一个节点结构,比如这样:
```python
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
```
然后,编写一个反转链表的函数,通常采用迭代或递归的方式实现:
**迭代方法:**
```python
def reverseList(head):
prev = None
curr = head
while curr is not None:
temp = curr.next
curr.next = prev
prev = curr
curr = temp
return prev
```
**递归方法:**
```python
def reverseListRecursively(head):
if head is None or head.next is None:
return head
new_head = reverseListRecursively(head.next)
head.next.next = head
head.next = None
return new_head
```
用户可以这样使用这个函数:
1. 创建一个链表实例并初始化元素。
2. 获取用户的输入,可能是链表的头结点。
3. 调用上述`reverseList`或`reverseListRecursively`函数对链表进行反转。
4. 输出反转后的链表,可以通过遍历返回的新头结点依次打印每个节点的值。
阅读全文