单链表的原地倒序
# 单链表 class LinkList: def __init__(self, data): self.data = data self.head = self self.next = None def add(self, data): new_link = LinkList(data) if self.head is None: self.head = new_link else: tem = self.head while tem.next: tem = tem.next tem.next = new_link def attribute(self): tem = self.head link_list = [] while tem.next: link_list.append([id(tem), tem.data, tem.next]) tem = tem.next else: link_list.append([id(tem), tem.data, tem.next]) return link_list def sort(self): fina = None while self.head: p = self.head self.head = p.next p.next = fina fina = p self.head = p tem_link = LinkList(2) tem_link.add(6) tem_link.add("哈哈哈哈") print(*tem_link.attribute()) tem_link.sort() print(*tem_link.attribute())
记录一下......卡壳了