Cache-Oblivious Comparison-Based Algorithms on Multisets
We study three comparison-based problems related to multisets in the cache-oblivious model: Duplicate elimination, multisorting and finding the most frequent element (the mode). We are interested in minimizing the cache complexity (or number of cache misses) of algorithms for these problems in the context under which cache size and block size are unknown. We give algorithms with cache complexities within a constant factor of the optimal for all the problems. In the case of determining the mode, the optimal algorithm is randomized as the deterministic algorithm differs from the lower bound by a sublogarithmic factor. We can achieve optimality either with a randomized method or if given, along with the input, lg lg of relative frequency of the mode with a constant additive error.
KeywordsInternal Node Distinct Element Cache Size Cache Memory Complete Binary Tree
Unable to display preview. Download preview PDF.
- 1.Aggarwal, A., Vitter, J.S.: The I/O complexity of sorting and related problems. In: ICALP 1987. LNCS, vol. 267, pp. 467–478. Springer, Heidelberg (1987)Google Scholar
- 2.Frigo, M., Leiserson, C.E., Prokop, H., Ramachandran, S.: Cache-oblivious algorithms. In: FOCS Proceedings, pp. 285–297. IEEE Computer Society Press, Los Alamitos (1999)Google Scholar
- 5.Arge, L., Knudsen, M., Larsen, K.: A general lower bound on the I/O-complexity of comparison-based algorithms. In: Proceedings of WADS. Springer, Heidelberg (1993)Google Scholar
- 7.Demaine, E.D.: Cache-oblivious algorithms and data structures. In: Lecture Notes from the EEF Summer School on Massive Data Sets, BRICS, University of Aarhus, Denmark. LNCS. Springer, Heidelberg (2002)Google Scholar