Search Results for « Open Addressing »
Some sources are temporarily unavailable. Results may be incomplete; please try again shortly.
Deletions in open addressing tables have often been seen as problematic. The usual solution is to use a special mark ’deleted’ so that probe sequences continue past deleted slots, as if there was an element still sitting there. Such a …
Read the full abstract
Deletions in open addressing tables have often been seen as problematic. The usual solution is to use a special mark ’deleted’ so that probe sequences continue past deleted slots, as if there was an element still sitting there. Such a solution, notwithstanding is wide applicability, may involve performance degradation. In the first part of this paper we review a practical implementation of the often overlooked deletion algorithm for linear probing hash tables, analyze its properties and performance, and provide several strong arguments in favor of the Robin Hood variant. In particular, we show how a small variation can yield substantial improvements for unsuccessful search. In the second part we propose an algorithm for true deletion in open addressing hashing with secondary clustering, like quadratic hashing. As far as we know, this is the first time that such an algorithm appears in the literature. Moreover, for tables built using the Robin Hood variant the deletion algorithm strongly preserves randomness (the resulting table is identical to the table that would result if the item were not inserted at all). Although it involves some extra memory for bookkeeping, the algorithm is comparatively easy and efficient, and it might be of some practical value, besides its theoretical interest.
We introduce a classical open-addressed hash table, called rainbow hashing, that supports a load factor of up to 1$-\varepsilon$, while also supporting$O(1)$expected-time queries, and$O\left({\log \,\log {\varepsilon ^{ - 1}}} \right)$expected-time insertions and deletions. We further prove that this tradeoff curve …
Read the full abstract
We introduce a classical open-addressed hash table, called rainbow hashing, that supports a load factor of up to 1$-\varepsilon$, while also supporting$O(1)$expected-time queries, and$O\left({\log \,\log {\varepsilon ^{ - 1}}} \right)$expected-time insertions and deletions. We further prove that this tradeoff curve is optimal: any classical open-addressed hash table that supports load factor$1-\varepsilon$must incur$\Omega \left({\log \,log{\varepsilon ^{ - 1}}} \right)$expected time per operation. Finally, we extend rainbow hashing to the setting where the hash table is dynamically resized over time. Surprisingly, the addition of dynamic resizing does not come at any time cost-even while maintaining a load factor of$\geq 1-\varepsilon$at all times, we can support$O(1)$queries and$O\left({\log \,\log {\varepsilon ^{ - 1}}} \right)$updates. Prior to our work, achieving any time bounds of the form$o(\varepsilon^{-1})$for all of insertions, deletions, and queries simultaneously remained an open Question.
Open-addressed hash tables without reordering, such as linear probing and uniform probing, are among the simplest and most widely used data structures. Their performance is traditionally measured by probe count. We study a complementary parameter: locality, defined as the geometric …
Read the full abstract
Open-addressed hash tables without reordering, such as linear probing and uniform probing, are among the simplest and most widely used data structures. Their performance is traditionally measured by probe count. We study a complementary parameter: locality, defined as the geometric distance from the first probed location to the farthest cell inspected or used. At load factor $1-\varepsilon$, uniform probing achieves the optimal $Θ(1/\varepsilon)$ probe count among greedy schemes, but has essentially no locality, whereas linear probing is highly local but performs $Θ(1/\varepsilon^2)$ probes. We show that this quadratic locality scale is fundamental: no open-addressing algorithm without reordering can achieve locality $o(1/\varepsilon^2)$ simultaneously at every load $1-\varepsilon$. We also prove an amortized expected-locality lower bound of $Ω(1/\varepsilon)$ over any sequence of $(1-\varepsilon)n$ insertions, even when the final load is known in advance. Our lower bound further implies that page size $B=Ω(1/\varepsilon^2)$ is necessary for $1+o(1)$ expected page span in immutable open addressing. We complement these lower bounds with two upper bounds. When the target load is known in advance, every insertion and every successful or unsuccessful search can be given expected probe count and locality $\widetilde O(1/\varepsilon)$, essentially deamortizing the amortized lower bound. We also give a load-oblivious greedy scheme with optimal expected probe count $Θ(1/\varepsilon)$ whose $i$-th probe is at distance $O(i^2)$ from the first probe. Its analysis gives a general variance bound for occupied-cell densities in symmetric probing schemes, implying an $O(\log n/\varepsilon^2)$ expected probe bound for every fixed-shift probing sequence and every load $1-\varepsilon$.
research-article Free Access Share on Expandable open addressing hash table storage and retrieval Author: Gary D. Knott National Institutes of Health, Bethesda, Maryland National Institutes of Health, Bethesda, MarylandView Profile Authors Info & Claims SIGFIDET '71: Proceedings of the 1971 …
Read the full abstract
research-article Free Access Share on Expandable open addressing hash table storage and retrieval Author: Gary D. Knott National Institutes of Health, Bethesda, Maryland National Institutes of Health, Bethesda, MarylandView Profile Authors Info & Claims SIGFIDET '71: Proceedings of the 1971 ACM SIGFIDET (now SIGMOD) Workshop on Data Description, Access and ControlNovember 1971Pages 187–206https://doi.org/10.1145/1734714.1734729Published:11 November 1971Publication History 11citation347DownloadsMetricsTotal Citations11Total Downloads347Last 12 Months87Last 6 weeks21 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
In this chapter, I look first at how Shakespeare may first have encountered open address in plays put on in Stratford upon Avon.In Shakespeare's early years, his father John was a man of some stature in Stratford.A glover and leather …
Read the full abstract
In this chapter, I look first at how Shakespeare may first have encountered open address in plays put on in Stratford upon Avon.In Shakespeare's early years, his father John was a man of some stature in Stratford.A glover and leather worker by trade in a town that was the "the acknowledged centre of the gloving trade" (Thomson, 9), John Shakespeare held important civic offices including constable, chamberlain, and bailiff.As Stratford's bailiff, he was one of the few officials entitled to grant licenses to travelling players (Clark, 3).In this capacity, John Shakespeare was among those civic officials who brought companies of players to Stratford and who hosted "two of the most prominent contemporary acting companies, the Queen's Men at the Guild Hall in the early summer of 1569 and Worcester's Men in August of the same year" (Thomson, 10).Perhaps, as Thomson observes, even if "[John Shakespeare's] son was too young then" to see these players, "he was old enough to watch Leicester's Men in 1573 or Warwick's Men in 1575" (10).Less than twenty miles from Stratford, on the road leading through Kenilworth and Warwick, lies Coventry, then as now a cathedral city and at that time a prosperous commercial centre.Coventry's civic records show the city's guilds heavily involved in a particularly lavish annual play.It would be curious if guild business, civic or religious duties, or even an interest in drama, had not at times taken John Shakespeare to Coventry, possibly accompanied by his young son.Coventry guild play performances took place on wagons that moved through the city (Twycross, 21).However, civic records and the two surviving texts, the shearmen and taylors' Nativity episode and the drapers' Last Judgment, indicate that
In this paper, we revisit one of the simplest problems in data structures: the task of inserting elements into an open-addressed hash table so that elements can later be retrieved with as few probes as possible. We show that, even …
Read the full abstract
In this paper, we revisit one of the simplest problems in data structures: the task of inserting elements into an open-addressed hash table so that elements can later be retrieved with as few probes as possible. We show that, even without reordering elements over time, it is possible to construct a hash table that achieves far better expected search complexities (both amortized and worst-case) than were previously thought possible. Along the way, we disprove the central conjecture left by Yao in his seminal paper “Uniform Hashing is Optimal”.
In this paper, we conducted empirical experiments to study the performance of hashing with a large set of data and compared the results of different collision approaches.The experiment results leaned more to closed addressing than to open addressing and deemed …
Read the full abstract
In this paper, we conducted empirical experiments to study the performance of hashing with a large set of data and compared the results of different collision approaches.The experiment results leaned more to closed addressing than to open addressing and deemed linear probing impractical due to its low performance.Moreover, when items are randomly distributed with keys in a large space, different hash algorithms might produce similar performance.Increasing randomness in keys does not help hash table performance either and it seems that the load factor solely determines possibility of collision.These new discoveries might help programmers to design software products using hash tables.
Deletion from open-address hash table is not so easy as deletion from chained hash table, because in open-address table we can't simply mark a slot containing deleted key as empty. Search for keys may become incorrect. The classical method to …
Read the full abstract
Deletion from open-address hash table is not so easy as deletion from chained hash table, because in open-address table we can't simply mark a slot containing deleted key as empty. Search for keys may become incorrect. The classical method to implement deletion is to mark slots in hash table by three values: "free", "busy", "deleted". That method is easy to implement, but there are some disadvantages. In this article we consider alternative method of deletion keys, where we avoid using the mark "deleted". The article contains the implementation of the method in Java.
In open addressed hashing, quadratic probing is attractive for striking a nice balance between having a high locality of reference and a low number of probes per search. However, these are empirical observations, not theoretical guarantees. Indeed, until recently, it …
Read the full abstract
In open addressed hashing, quadratic probing is attractive for striking a nice balance between having a high locality of reference and a low number of probes per search. However, these are empirical observations, not theoretical guarantees. Indeed, until recently, it was not known whether quadratic probing had constant expected insertion cost under any positive load factor $α> 0$, even with uniformly random hash functions. In a recent breakthrough---albeit a numerically understated breakthrough---Kuszmaul and Xi (2024) proved that any fixed offset sequence (including quadratic probing) does, in fact, have constant expected insertion cost for load factors $α\leq 8.9\%$. This is well below what we would like to prove, that quadratic probing has constant insertion cost for any load factor $α< 1-ε$ bounded away from 1. In this paper, we prove that open addressed hashing with any fixed offset sequence has constant expected insertion cost for load factors up to $35.74\%$, and that for quadratic probing in particular, we can increase the load factor to $37.61\%$. Our main innovation is a new type of witness forest for recording collisions among the probe sequences.