cur2 = cur2.next else: head = head1 cur = cur1 cur1 = cur1.next while cur1 is not None and cur2 is not None: if cur1.data < cur2.data: cur.next = cur1 cur = cur1 cur1 = cur1.next else: cur.next = cur2 cur = cur2 cur2 = cur2.next if cur1 is not None: cur.next = cur1 if cur2 is not None: cur.next = cur2 return head if __name__ == '__main__': head1 = constract_link(1) head2 = constract_link(2) print("链表1:") print_link(head1) print("\n 链表2:") print_link(head2) print("\n 合并后链表") head = merge(head1, head2) print_link(head)
tmp = LNode() tmp.data = i + 2 tmp.next = None cur.next = tmp cur = tmp i += 1 # 构造第一个 i = 9 cur = head2 while i > 4: tmp = LNode() tmp.data = i tmp.next = None cur.next = tmp cur = tmp i -= 1 print("\n link1:", end='') print_link(head1) print("\n link2:", end='') print_link(head2) add_result = add(head1, head2) print("\n after add:", end='') print_link(add_result)
def remove_node(p): if p.next is None or p is None: return False p.data = p.next.data p.next = p.next.next return True if __name__ == '__main__': i = 1 head = LNode() head.next = None tmp = None cur = head p = None while i < 8: tmp = LNode() tmp.data = i tmp.next = None cur.next = tmp cur = tmp if i == 5: p = tmp i += 1 print_link(head) result = remove_node(p) if result: print("删除后:") print_link(head)