Home | Trees | Index | Help |
---|
Package pygraphlib :: Module util :: Class priorityDictionary |
|
object
--+ |dict
--+ | priorityDictionary
Priority dictionary using binary heaps
David Eppstein, UC Irvine, 8 Mar 2002
Implements a data structure that acts almost like a dictionary, with two modifications:Method Summary | |
---|---|
Initialize priorityDictionary by creating binary heap of pairs (value,key). | |
Create destructive sorted iterator of priorityDictionary. | |
Change value stored in dictionary and add corresponding pair to heap. | |
Reimplement setdefault to pass through our customized __setitem__. | |
Find smallest item after removing deleted items from front of heap. | |
Inherited from dict | |
x.__cmp__(y) <==> cmp(x,y) | |
x.__contains__(y) <==> y in x | |
x.__delitem__(y) <==> del x[y] | |
x.__eq__(y) <==> x==y | |
x.__ge__(y) <==> x>=y | |
x.__getattribute__('name') <==> x.name | |
x.__getitem__(y) <==> x[y] | |
x.__gt__(y) <==> x>y | |
x.__hash__() <==> hash(x) | |
x.__le__(y) <==> x<=y | |
x.__len__() <==> len(x) | |
x.__lt__(y) <==> x<y | |
x.__ne__(y) <==> x!=y | |
T.__new__(S, ...) -> a new object with type S, a subtype of T | |
x.__repr__() <==> repr(x) | |
D.clear() -> None. | |
D.copy() -> a shallow copy of D | |
D.get(k[,d]) -> D[k] if k in D, else d. | |
D.has_key(k) -> 1 if D has a key k, else 0 | |
D.items() -> list of D's (key, value) pairs, as 2-tuples | |
D.iteritems() -> an iterator over the (key, value) items of D | |
D.iterkeys() -> an iterator over the keys of D | |
D.itervalues() -> an iterator over the values of D | |
D.keys() -> list of D's keys | |
If key is not found, d is returned if given, otherwise KeyError is raised | |
2-tuple; but raise KeyError if D is empty | |
D.update(E) -> None. | |
D.values() -> list of D's values | |
Inherited from object | |
x.__delattr__('name') <==> del x.name | |
helper for pickle | |
helper for pickle | |
x.__setattr__('name', value) <==> x.name = value | |
x.__str__() <==> str(x) | |
Inherited from type | |
v defaults to None. |
Method Details |
---|
__init__(self)
Initialize priorityDictionary by creating binary heap of pairs
(value,key). Note that changing or removing a dict entry will not
remove the old pair from the heap until it is found by smallest() or
until the heap is rebuilt.
|
__iter__(self)Create destructive sorted iterator of priorityDictionary.
|
__setitem__(self,
key,
val)
Change value stored in dictionary and add corresponding pair to
heap. Rebuilds the heap if the number of deleted items gets large, to
avoid memory leakage.
|
setdefault(self, key, val)Reimplement setdefault to pass through our customized __setitem__.
|
smallest(self)Find smallest item after removing deleted items from front of heap. |
Home | Trees | Index | Help |
---|
Generated by Epydoc 2.1 on Wed Jan 5 09:38:28 2005 | http://epydoc.sf.net |