# 節點classNode(object):def__init__(self, elem):
self.elem = elem
self.next=None# 鏈表classSingleList(object):def__init__(self, head):
self.head = head
# 反轉鏈表defreverseSingleList(self, head):if head ==Noneor head.next==None:return
l, m, r = head, head.next, head.next.nextwhile r:
m.next= l
l = m
m = r
r = r.next
m.next= l
return m
if __name__ =='__main__':
head = Node(1)
head.next= Node(2)
head.next.next= Node(3)
head.next.next.next= Node(4)print("原鏈表:")print(head.elem)print(head.next.elem)print(head.next.next.elem)print(head.next.next.next.elem)
singleList = SingleList(head)
m = singleList.reverseSingleList(singleList.head)print("反轉後鏈表:")print(m.elem)print(m.next.elem)print(m.next.next.elem)print(m.next.next.next.elem)