270 research outputs found
A Static Optimality Transformation with Applications to Planar Point Location
Over the last decade, there have been several data structures that, given a
planar subdivision and a probability distribution over the plane, provide a way
for answering point location queries that is fine-tuned for the distribution.
All these methods suffer from the requirement that the query distribution must
be known in advance.
We present a new data structure for point location queries in planar
triangulations. Our structure is asymptotically as fast as the optimal
structures, but it requires no prior information about the queries. This is a
2D analogue of the jump from Knuth's optimum binary search trees (discovered in
1971) to the splay trees of Sleator and Tarjan in 1985. While the former need
to know the query distribution, the latter are statically optimal. This means
that we can adapt to the query sequence and achieve the same asymptotic
performance as an optimum static structure, without needing any additional
information.Comment: 13 pages, 1 figure, a preliminary version appeared at SoCG 201
Top-Down Skiplists
We describe todolists (top-down skiplists), a variant of skiplists (Pugh
1990) that can execute searches using at most
binary comparisons per search and that have amortized update time
. A variant of todolists, called working-todolists,
can execute a search for any element using binary comparisons and have amortized search time
. Here, is the "working-set number" of
. No previous data structure is known to achieve a bound better than
comparisons. We show through experiments that, if implemented
carefully, todolists are comparable to other common dictionary implementations
in terms of insertion times and outperform them in terms of search times.Comment: 18 pages, 5 figure
Weighted dynamic finger in binary search trees
It is shown that the online binary search tree data structure GreedyASS
performs asymptotically as well on a sufficiently long sequence of searches as
any static binary search tree where each search begins from the previous search
(rather than the root). This bound is known to be equivalent to assigning each
item in the search tree a positive weight and bounding the search
cost of an item in the search sequence by
amortized. This result is the strongest finger-type bound to be proven for
binary search trees. By setting the weights to be equal, one observes that our
bound implies the dynamic finger bound. Compared to the previous proof of the
dynamic finger bound for Splay trees, our result is significantly shorter,
stronger, simpler, and has reasonable constants.Comment: An earlier version of this work appeared in the Proceedings of the
Twenty-Seventh Annual ACM-SIAM Symposium on Discrete Algorithm
Smooth heaps and a dual view of self-adjusting data structures
We present a new connection between self-adjusting binary search trees (BSTs)
and heaps, two fundamental, extensively studied, and practically relevant
families of data structures. Roughly speaking, we map an arbitrary heap
algorithm within a natural model, to a corresponding BST algorithm with the
same cost on a dual sequence of operations (i.e. the same sequence with the
roles of time and key-space switched). This is the first general transformation
between the two families of data structures.
There is a rich theory of dynamic optimality for BSTs (i.e. the theory of
competitiveness between BST algorithms). The lack of an analogous theory for
heaps has been noted in the literature. Through our connection, we transfer all
instance-specific lower bounds known for BSTs to a general model of heaps,
initiating a theory of dynamic optimality for heaps.
On the algorithmic side, we obtain a new, simple and efficient heap
algorithm, which we call the smooth heap. We show the smooth heap to be the
heap-counterpart of Greedy, the BST algorithm with the strongest proven and
conjectured properties from the literature, widely believed to be
instance-optimal. Assuming the optimality of Greedy, the smooth heap is also
optimal within our model of heap algorithms. As corollaries of results known
for Greedy, we obtain instance-specific upper bounds for the smooth heap, with
applications in adaptive sorting.
Intriguingly, the smooth heap, although derived from a non-practical BST
algorithm, is simple and easy to implement (e.g. it stores no auxiliary data
besides the keys and tree pointers). It can be seen as a variation on the
popular pairing heap data structure, extending it with a "power-of-two-choices"
type of heuristic.Comment: Presented at STOC 2018, light revision, additional figure
Automated Expected Amortised Cost Analysis of Probabilistic Data Structures
In this paper, we present the first fully-automated expected amortised cost
analysis of self-adjusting data structures, that is, of randomised splay trees,
randomised splay heaps and randomised meldable heaps, which so far have only
(semi-) manually been analysed in the literature. Our analysis is stated as a
type-and-effect system for a first-order functional programming language with
support for sampling over discrete distributions, non-deterministic choice and
a ticking operator. The latter allows for the specification of fine-grained
cost models. We state two soundness theorems based on two different -- but
strongly related -- typing rules of ticking, which account differently for the
cost of non-terminating computations. Finally we provide a prototype
implementation able to fully automatically analyse the aforementioned case
studies.Comment: 39 page
Enhanced User-driven Ranking System with Splay Tree
E-learning is one of the information and communication technology products used for teaching and learning process [35]. An efficient and effective way to construct trust relationship among peer users in e-learning environment is ranking. User-driven ranking systems are based only on the feedback or rating provided by the users. In [46-48] the authors provide a variety of trust and reputation methods. Certified Belief in Strength (CBS) [45] is a novel trust measurement method based on reputation and strength. In [38] author presents a recommendation system based on the relevant feedback review to predict the user's interests, that are ranked based on the recommendations history they provide previously. Users with higher rating obtain high reputation compared to less scored users. In question answering websites like StackOverflow, new or low scored users are ignored by the community. This discourage them and their involvement with the community reduces further down, as power law states, alleged low users are pushed to the bottom of the ranking list. Avoid this condition by encouraging less reputed users and prevent them from moving further down in ranking level. Thus, low reputed users are provided with few more chances to participate actively in the e-learning environments. A splay tree is a Binary Search Tree with self-balancing skill. The splay tree brings the recently accessed item to the top of the tree, thus active users are always on the top of the tree. A splay tree is used to represent user's ranks, and to semi-splay low ranked users again in the tree thus preventing them from further drowning in the ranking list. The focus of this research work is to find and enhance low reputed users in reputation system by providing few more chances to take part actively in the e-learning environment using the splay tree. Normalized discounted cumulative gain (NDCG) acts as a decision part for identifying drowning users
- …