Batched Predecessor and Sorting with Size-Priced Information in External Memory

04/27/2020
by   Michael A. Bender, et al.
0

In the unit-cost comparison model, a black box takes an input two items and outputs the result of the comparison. Problems like sorting and searching have been studied in this model, and it has been generalized to include the concept of priced information, where different pairs of items (say database records) have different comparison costs. These comparison costs can be arbitrary (in which case no algorithm can be close to optimal (Charikar et al. STOC 2000)), structured (for example, the comparison cost may depend on the length of the databases (Gupta et al. FOCS 2001)), or stochastic (Angelov et al. LATIN 2008). Motivated by the database setting where the cost depends on the sizes of the items, we consider the problems of sorting and batched predecessor where two non-uniform sets of items A and B are given as input. (1) In the RAM setting, we consider the scenario where both sets have n keys each. The cost to compare two items in A is a, to compare an item of A to an item of B is b, and to compare two items in B is c. We give upper and lower bounds for the case a < b < c. Notice that the case b=1, a=c=∞ is the famous “nuts and bolts” problem. (2) In the Disk-Access Model (DAM), where transferring elements between disk and internal memory is the main bottleneck, we consider the scenario where elements in B are larger than elements in A. The larger items take more I/Os to be brought into memory, consume more space in internal memory, and are required in their entirety for comparisons. We first give output-sensitive lower and upper bounds on the batched predecessor problem, and use these to derive bounds on the complexity of sorting in the two models. Our bounds are tight in most cases, and require novel generalizations of the classical lower bound techniques in external memory to accommodate the non-uniformity of keys.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
11/04/2018

Lower Bounds for External Memory Integer Sorting via Network Coding

Sorting extremely large datasets is a frequently occuring task in practi...
research
02/24/2023

Optimal Bounds for Noisy Sorting

Sorting is a fundamental problem in computer science. In the classical s...
research
03/15/2018

Pivot Sampling in QuickXSort: Precise Analysis of QuickMergesort and QuickHeapsort

QuickXSort is a strategy to combine Quicksort with another sorting metho...
research
01/07/2018

Seasonal Goods and Spoiled Milk: Pricing for a Limited Shelf-Life

We examine the case of items with a limited shelf-life where storing an ...
research
04/11/2022

On Top-k Selection from m-wise Partial Rankings via Borda Counting

We analyze the performance of the Borda counting algorithm in a non-para...
research
09/09/2020

Learning Slab Classes to Alleviate Memory Holes in Memcached

We consider the problem of memory holes in slab allocators, where an ite...
research
02/23/2021

Optimal Sorting Circuits for Short Keys

A long-standing open question in the algorithms and complexity literatur...

Please sign up or login with your details

Forgot password? Click here to reset