def testADeleteRBT(tsize): from bintrees import RBTree from time import time from random import randint,sample TSIZE=tsize keys=sample(range(TSIZE*10), TSIZE) values=[0]*TSIZE mydata=list(zip(keys, values)) keystodel=sample(keys, 100);valdel=[0]*100 datadel=list(zip(keystodel, valdel)) mytree = RBTree() mytree.update(mydata) avgtime=0.0;times=100 for ii in range(times): startTime=time() for kd in keystodel: #mytree.pop(kd) del mytree[kd] avgtime+=(time()-startTime) mytree.update(datadel) avgtime=avgtime*1000.0/times print tsize,float(avgtime) return avgtime