具体python实现:
# -------- utf8 -------------------- # --------author = huangwave-------- # 创建列表节点类 class List_Node(object): def __init__(self,val): self.val = val self.next = None # 建立链表 class invert1(object): def invert_list(self,head): ptr = head before = None while ptr != None: last = before before = ptr ptr = ptr.next before.next = last return before a = [1, 2, 3, 4, 5] # 创建链表头 head = List_Node(0) ptr = head for index, i in enumerate(a): ptr.next = List_Node(i) ptr = ptr.next ptr1 = head while ptr1 != None: ptr1 = ptr1.next if not ptr1: break print(ptr1.val) print("%" * 40) m = invert1() ptr2 = m.invert_list(head) while ptr2.val != 0: print(ptr2.val) ptr2 = ptr2.next