算法14~19中,la、lb、Ic为各个单链表的头指针
算法14~19中,la、lb、Ic为各个单链表的头指针,直接用头指针表示和操作单链表。19·设计算法,求两个有序单链表la和lb表示的集合的交集lc,Ic也为有序单链表。
答案
class LNode: def __init__(self,data): self.data=data self.next=None class LinkList: def __init__(self): self.head = LNode(None) def intersection(la:LinkList, lb:LinkList): pa = la.head.next pb = lb.head.next pre = la.head while pa and pb: if pa.data < pb.data: # 删除pa pre.next = pa.next pa = pre.next elif pa.data > pb.data: pb = pb.next else: pre = pa pa = pa.next pb = pb.next # 删除la后面剩余结点 pre.next = None