Esempio n. 1
0
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