Balanced Allocations
- 1 January 1999
- journal article
- Published by Society for Industrial & Applied Mathematics (SIAM) in SIAM Journal on Computing
- Vol. 29 (1) , 180-200
- https://doi.org/10.1137/s0097539795288490
Abstract
Suppose that we sequentially place $n$ balls into n boxes by putting each ball into a randomly chosen box. It is well known that when we are done, the fullest box has with high probability (1 + o(1))ln n/ln ln n balls in it. Suppose instead that for each ball we choose two boxes at random and place the ball into the one which is less full at the time of placement. We show that with high probability, the fullest box contains only ln ln n/ln 2 + O(1) balls---exponentially less than before. Furthermore, we show that a similar gap exists in the infinite process, where at each step one ball, chosen uniformly at random, is deleted, and one ball is added in the manner above. We discuss consequences of this and related theorems for dynamic resource allocation, hashing, and on-line load balancing.
Keywords
This publication has 10 references indexed in Scilit:
- On contention resolution protocols and associated probabilistic phenomenaJournal of the ACM, 1998
- On-line routing of virtual circuits with applications to load balancing and machine schedulingJournal of the ACM, 1997
- On-Line Load Balancing of Temporary TasksJournal of Algorithms, 1997
- Efficient PRAM Simulation on a Distributed Memory MachineAlgorithmica, 1996
- Balanced allocations for tree-like inputsInformation Processing Letters, 1995
- The Competitiveness of On-Line AssignmentsJournal of Algorithms, 1995
- On-line load balancingTheoretical Computer Science, 1994
- Dynamic Perfect Hashing: Upper and Lower BoundsSIAM Journal on Computing, 1994
- Storing a Sparse Table with 0 (1) Worst Case Access TimeJournal of the ACM, 1984
- Expected Length of the Longest Probe Sequence in Hash Code SearchingJournal of the ACM, 1981