Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Lab 08
Lab 08
def inicArbinOr():
return []
def toarrayt(a1,array):
if a1!=[]:
array.append(a1[0])
toarrayt(a1[1],array)
toarrayt(a1[2],array)
def insArbinOr(arbinOr,elem):
if arbinOr==[]:
return [elem,[],[]]
else:
if elem > arbinOr[0]:
arbinOr[2] = insArbinOr(arbinOr[2],elem)
else:
arbinOr[1] = insArbinOr(arbinOr[1],elem)
return arbinOr
1. Une al rbol de bsqueda binaria a1, el rbol de bsqueda
binaria a2
def unirArbinOr(a1, a2):
ar=[]
toarrayt(a1,ar)
for i in ar:
insArbinOr(a1,i)
Complementos:
def mayorElem(arbinOr):
if arbinOr[2]==[] :
return arbinOr[0]
else:
return mayorElem(arbinOr[2])
def elimArbinOr(arbinOr, eleme):
p = inicArbinOr()
if arbinOr!=[]:
if arbinOr[0]==eleme:
if arbinOr[1]==[] and arbinOr[2]==[]:
return []
elif arbinOr[1]==[]:
p = arbinOr[2]
return p
else:
mayor = mayorElem(arbinOr[1])
arbinOr[0] = mayor
arbinOr[1] = elimArbinOr(arbinOr[1], mayor)
elif arbinOr[0] > eleme:
arbinOr[1] = elimArbinOr(arbinOr[1], eleme)
else:
arbinOr[2] = elimArbinOr(arbinOr[2], eleme)
return arbinOr