def search2(): l, e1, a12, e2, a20, e0, sa = create_circular_linked_list( [1, 2, 0], y=220) ant = Pointer(e0, 'ant', direction='d.d_2', color=RED, dist=25) p = Pointer(e1, 'p', direction='u.u_2', color=RED) return [ l, e1, a12, e2, a20, e0, sa, ant, p ]
def search1(): l, e1, a12, e2, a20, e0, sa = create_circular_linked_list([1, 2, 0]) ant = Pointer(e1, 'ant', direction='d.d_2', color=RED, dist=25) p = Pointer(e2, 'p', direction='u.u_2', color=RED) c = Circle(a12.middle, "", color=RED, radius=10) return [ l, e1, a12, e2, a20, e0, sa, ant, p, c ]
def draw(): l, e1, a12, e2, a23, e3, sa = create_circular_linked_list( ["", None, "", ""]) c1 = Cross(a12, color=RED) en = LinkedList((e2.x - 60, e2.y - 40), "", color=RED) a1n = Arrow(e1.prox_1, en.start_4, color=RED) an2 = Arrow(en.prox_3, e2.start_0, color=RED) return [ l, e1, a12, e2, a23, e3, sa, c1, en, a1n, an2, ]
def remove(): l, e1, a12, e2, sa = create_circular_linked_list( [1, 2], color=RED, y=220) sa = SubArrow(e2.prox_2, e1.start_2, color=RED, size_y=40, size_x1=25) p1 = Pointer(e1, 'p', direction='u.u_2', color=RED) ant2 = Pointer(e2, 'ant', direction='d.d_2', color=RED, dist=25) sa2 = SubArrow(e2.prox_3, e2.start_3, color=BLUE, size_y=20) csa = Cross(sa, color=BLUE) cl = Cross(l.label, color=BLUE) l2 = Pointer(e2, 'l', direction='ul.u_0', color=BLUE) return [ l, e1, a12, e2, sa, ant2, p1, sa2, csa, cl, l2 ]
def draw(): return ( create_circular_linked_list([]) + create_circular_linked_list([""], x=100) )