Results 1 
9 of
9
Two simplified algorithms for maintaining order in a list
 PROCEEDINGS OF THE 10TH ANNUAL EUROPEAN SYMPOSIUM ON ALGORITHMS (ESA
, 2002
"... In the OrderMaintenance Problem, the objective is to maintain a total order subject to insertions, deletions, and precedence queries. Known optimal solutions, due to Dietz and Sleator, are complicated. We present new algorithms that match the bounds of Dietz and Sleator. Our solutions are simple, ..."
Abstract

Cited by 61 (9 self)
 Add to MetaCart
In the OrderMaintenance Problem, the objective is to maintain a total order subject to insertions, deletions, and precedence queries. Known optimal solutions, due to Dietz and Sleator, are complicated. We present new algorithms that match the bounds of Dietz and Sleator. Our solutions are simple, and we present experimental evidence that suggests that they are superior in practice.
Load Balancing and Locality in RangeQueriable Data Structures
 Proc. of the Annual ACM symposium on Principles of Distributed Computing
, 2004
"... We describe a loadbalancing mechanism for assigning elements to servers in a distributed data structure that supports range queries. The mechanism ensures both loadbalancing with respect to an arbitrary load measure specified by the user and geographical locality, assigning elements with similar k ..."
Abstract

Cited by 32 (0 self)
 Add to MetaCart
We describe a loadbalancing mechanism for assigning elements to servers in a distributed data structure that supports range queries. The mechanism ensures both loadbalancing with respect to an arbitrary load measure specified by the user and geographical locality, assigning elements with similar keys to the same server. Though our mechanism is specifically designed to improve the performance of skip graphs, it can be adapted to provide deterministic, localitypreserving loadbalancing to any distributed data structure that orders machines in a ring or line.
Optimal static range reporting in one dimension
 IN PROC. 33RD ACM SYMPOSIUM ON THEORY OF COMPUTING (STOC'01)
, 2001
"... ..."
Rank Aggregation Revisited
"... The rank aggregation problem is to combine many different rank orderings on the same set of candidates, or alternatives, in order to obtain a "better" ordering. Rank aggregation has been studied extensively in the context of social choice theory, where several "voting paradoxes" have been discover ..."
Abstract

Cited by 15 (0 self)
 Add to MetaCart
The rank aggregation problem is to combine many different rank orderings on the same set of candidates, or alternatives, in order to obtain a "better" ordering. Rank aggregation has been studied extensively in the context of social choice theory, where several "voting paradoxes" have been discovered.
Counting Inversions, Offline Orthogonal Range Counting, and Related Problems
"... We give an O(n √ lg n)time algorithm for counting the number of inversions in a permutation on n elements. This improves a longstanding previous bound of O(n lg n / lg lg n) that followed from Dietz’s data structure [WADS’89], and answers a question of Andersson and Petersson [SODA’95]. As Dietz’s ..."
Abstract

Cited by 9 (3 self)
 Add to MetaCart
We give an O(n √ lg n)time algorithm for counting the number of inversions in a permutation on n elements. This improves a longstanding previous bound of O(n lg n / lg lg n) that followed from Dietz’s data structure [WADS’89], and answers a question of Andersson and Petersson [SODA’95]. As Dietz’s result is known to be optimal for the related dynamic rank problem, our result demonstrates a significant improvement in the offline setting. Our new technique is quite simple: we perform a “vertical partitioning ” of a trie (akin to van Emde Boas trees), and use ideas from external memory. However, the technique finds numerous applications: for example, we obtain • in d dimensions, an algorithm to answer n offline orthogonal range counting queries in time O(n lg d−2+1/d n); • an improved construction time for online data structures for orthogonal range counting; • an improved update time for the partial sums problem; • faster Word RAM algorithms for finding the maximum depth in an arrangement of axisaligned rectangles, and for the slope selection problem. As a bonus, we also give a simple (1 + ε)approximation algorithm for counting inversions that runs in linear time, improving the previous O(n lg lg n) bound by Andersson and Petersson.
Onthefly maintenance of seriesparallel relationships in forkjoin multithreaded programs
 IN PROCEEDINGS OF THEACM SYMPOSIUM ON PARALLEL ALGORITHMS AND ARCHITECTURES (SPAA
, 2004
"... A key capability of datarace detectors is to determine whether one thread executes logically in parallel with another or whether the threads must operate in series. This paper provides two algorithms, one serial and one parallel, to maintain seriesparallel (SP) relationships “on the fly” for fork ..."
Abstract

Cited by 8 (2 self)
 Add to MetaCart
A key capability of datarace detectors is to determine whether one thread executes logically in parallel with another or whether the threads must operate in series. This paper provides two algorithms, one serial and one parallel, to maintain seriesparallel (SP) relationships “on the fly” for forkjoin multithreaded programs. The serial SPorder algorithm runs in O(1) amortized time per operation. In contrast, the previously best algorithm requires a time per operation that is proportional to Tarjan’s functional inverse of Ackermann’s function. SPorder employs an ordermaintenance data structure that allows us to implement a more efficient “EnglishHebrew ” labeling scheme than was used in earlier race detectors, which immediately yields an improved determinacyrace detector. In particular, any forkjoin program running in T1 time on a single processor can be checked on the fly for determinacy races in
Paradoxical effects in PageRank incremental computations
 In WAW
, 2004
"... Deciding which kind of visiting strategy accumulates highquality pages more quickly is one of the most often debated issues in the design of web crawlers. This paper proposes a related, and previously overlooked, measure of effectivity for crawl strategies: whether the graph obtained after a partia ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
Deciding which kind of visiting strategy accumulates highquality pages more quickly is one of the most often debated issues in the design of web crawlers. This paper proposes a related, and previously overlooked, measure of effectivity for crawl strategies: whether the graph obtained after a partial visit is in some sense representative of the underlying web graph as far as the computation of PageRank is concerned. More precisely, we are interested in determining how rapidly the computation of PageRank over the visited subgraph yields rankings that agree with the ones computed in the complete graph; ranks are compared using Kendall’s τ. We describe a number of largescale experiments that show the following paradoxical effect: visits that gather PageRank more quickly (e.g., highestquality first) are also those that tend to miscalculate PageRank. Finally, we perform the same kind of experimental analysis on some synthetic random graphs, generated using wellknown webgraph models: the results are almost opposite to those obtained on real web graphs. 1
Load Balancing and Locality in RangeQueriable Data
 In Proceedings of the Symposium on Principles of Distributed Computing (PODC
, 2004
"... We describe a loadbalancing mechanism for assigning elements to servers in a distributed data structure that supports range queries. The mechanism ensures both loadbalancing with respect to an arbitrary load measure specified by the user and geographical locality, assigning elements with similar k ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
We describe a loadbalancing mechanism for assigning elements to servers in a distributed data structure that supports range queries. The mechanism ensures both loadbalancing with respect to an arbitrary load measure specified by the user and geographical locality, assigning elements with similar keys to the same server. Though our mechanism is specifically designed to improve the performance of skip graphs, it can be adapted to provide deterministic, localitypreserving loadbalancing to any distributed data structure that orders machines in a ring or line.