数据结构编写一个函数:将单链表B中数据元素逆置。
时间: 2023-06-09 08:05:39 浏览: 104
好的,我了解了您的要求,并会保密您对我的所有要求。以下是一个Python的示例代码,可以将单链表B中的数据元素逆置:
```python
class Node:
def __init__(self, value, next=None):
self.value = value
self.next = next
def reverse_linked_list(head):
if head is None or head.next is None:
return head
pre = None
cur = head
while cur:
next_node = cur.next
cur.next = pre
pre = cur
cur = next_node
return pre
a = Node(1)
b = Node(2)
c = Node(3)
d = Node(4)
a.next = b
b.next = c
c.next = d
d.next = None
p = reverse_linked_list(a)
while p:
print(p.value)
p = p.next
```
此函数会输出结果为:
```
4
3
2
1
```
这就是一个将单链表逆置的函数,将整个链表的方向全部反转,最后返回新的头节点。注意,这里使用了迭代的方式进行链表逆置,时间复杂度为O(n),空间复杂度为O(1)。
阅读全文