# 如何把链表相邻元素翻转
# 声明类结点
class LNode():
def __init__(self):
self.data = None # 数据域
self.next = None # 指针域
# 创建链表
def ConstructList():
head = LNode()
temp = head
i = 1
while i<8:
cur = LNode()
cur.data = i
temp.next = cur
temp = cur
i += 1
return head
# 把链表相邻元素翻转
def Reverse(head):
if head==None or head.next==None:
return
cur = head.next # 当前遍历结点
pre = head # 当前结点的前驱结点
next = None # 当前结点后继结点的后继结点
while cur!=None and cur.next!=None:
next = cur.next.next
pre.next = cur.next
cur.next.next = cur
cur.next = next
pre = cur
cur = next
if __name__=="__main__":
head = ConstructList()
Reverse(head)
temp = head.next
while temp!=None:
print(temp.data)
temp = temp.next