Car-Pooling as a Data Structuring Device: The Soft Heap
A simple variant of a priority queue, called a soft heap, is introduced. The data structure supports the usual operations: insert, delete, meld, and findmin. In order to beat the standard information theoretic bounds, the soft heap allows errors: occasionally, the keys of certain items are artificially raised. Given any 0 < ε < 1/2 and any mixed sequence of n operations, the soft heap ensures that at most εn keys are raised at any time. The amortized complexity of each operation is constant, except for insert, which takes O(log 1/ε) time. The soft heap is optimal. Also, being purely pointer-based, no arrays are used and no numeric assumptions are made on the keys. The novelty of the data structure is that items are moved together in groups, in a data-structuring equivalent of “car pooling.” The main application of the data structure is a faster deterministic algorithm for minimum spanning trees.
Unable to display preview. Download preview PDF.
- 1.Chazelle, B. A faster deterministic algorithm for minimum spanning trees, Proc. 38th Ann. IEEE Symp. Found. Comp. Sci. (1997), 22–31.Google Scholar
- 2.Chazelle, B. A deterministic algorithm for minimum spanning trees, manuscript, 1998.Google Scholar
- 5.Matias, Y., Vitter, J.S., Young, N. Approximate Data Structures with Applications, Proc. 5th Ann. SIAM/ACM Symp. Disc. Alg. (SODA’ 94), 1994.Google Scholar