again for the list:
###################
import random
from xheap import RemovalHeap
class X(object):
c = 0
def __init__(self, x):
self.x = x
def __lt__(self, other):
X.c += 1
return self.x < other.x
n = 100000
for jj in range(5):
items = [X(i) for i in range(n)]
random.shuffle(items)
heap = RemovalHeap(items)
random.shuffle(items)
for i in items:
heap.remove(i)
print(X.c)
X.c = 0
(note to myself: never copy PyCharm formatting strings to this list).
On 05.02.2016 17:27, Sven R. Kunze wrote:
Hi srinivas,
I wrote this simple benchmark to measure comparisons:
import random
from xheapimport RemovalHeap
class X(object):
c =0 def __init__(self, x):
self.x = x
def __lt__(self, other):
X.c +=1 return self.x < other.x
n =100000 for jjin range(5):
items = [X(i)for iin range(n)]
random.shuffle(items)
heap = RemovalHeap(items)
random.shuffle(items)
for i in items:
heap.remove(i)
print(X.c)
X.c =0
old version:
430457
430810
430657
429971
430583
your pull request version:
426414
426045
425437
425528
425522
Can we do better here?
Best,
Sven
--
https://mail.python.org/mailman/listinfo/python-list