scispace - formally typeset
Search or ask a question

Showing papers by "Robert E. Tarjan published in 2006"



Book ChapterDOI
Robert E. Tarjan1, Julie Ward1, Bin Zhang1, Yunhong Zhou1, Jia Mao1 
11 Sep 2006
TL;DR: It is shown that a standard monotonic parametric maximum flow problem can be formulated as a problem of computing a particular maximum flow that is balanced in an appropriate sense, and a divide-and-conquer algorithm is presented to compute such a balanced flow in a logarithmic number of ordinary maximum-flow computations.
Abstract: We explore balancing as a definitional and algorithmic tool for finding minimum cuts and maximum flows in ordinary and parametric networks. We show that a standard monotonic parametric maximum flow problem can be formulated as a problem of computing a particular maximum flow that is balanced in an appropriate sense. We present a divide-and-conquer algorithm to compute such a balanced flow in a logarithmic number of ordinary maximum-flow computations. For the special case of a bipartite network, we present two simple, local algorithms for computing a balanced flow. The local balancing idea becomes even simpler when applied to the ordinary maximum flow problem. For this problem, we present a round-robin arc-balancing algorithm that computes a maximum flow on an n- vertex, m-arc network with integer arc capacities of at most U in O(n2m log(nU)) time. Although this algorithm is slower by at least a factor of n than other known algorithms, it is extremely simple and well-suited to parallel and distributed implementation.

16 citations


Proceedings ArticleDOI
22 Jan 2006
TL;DR: A novel variant of the problem of efficiently maintaining dynamic rooted trees, which allows an operation that merges two tree paths, is considered and a data structure is developed that supports merges and all other standard tree operations in O(log2 n) amortized time on an n-node forest.
Abstract: Motivated by an application in computational topology, we consider a novel variant of the problem of efficiently maintaining dynamic rooted trees. This variant allows an operation that merges two tree paths. In contrast to the standard problem, in which only one tree arc at a time changes, a single merge operation can change many arcs. In spite of this, we develop a data structure that supports merges and all other standard tree operations in O(log2n) amortized time on an n-node forest. For the special case that occurs in the motivating application, in which arbitrary arc deletions are not allowed, we give a data structure with an O(log n) amortized time bound per operation, which is asymptotically optimal. The analysis of both algorithms is not straightforward and requires ideas not previously used in the study of dynamic trees. We explore the design space of algorithms for the problem and also consider lower bounds for it.

15 citations


Journal ArticleDOI
TL;DR: Recently, Thorup et al. as mentioned in this paper showed that any priority queue data structure that supports insert, delete, and find-min operations in pq(n) amortized time, where n is an upper bound on the number of elements in the priority queue, can also support fast meld operations with essentially no increase in the amortised cost of the other operations.
Abstract: We show that any priority queue data structure that supports insert, delete, and find-min operations in pq(n) amortized time, where n is an upper bound on the number of elements in the priority queue, can be converted into a priority queue data structure that also supports fast meld operations with essentially no increase in the amortized cost of the other operations. More specifically, the new data structure supports insert, meld and find-min operations in O(1) amortized time, and delete operations in O(pq(n) p α(n)) amortized time, where α(n) is a functional inverse of the Ackermann function, and where n this time is the total number of operations performed on all the priority queues. The construction is very simple. The meldable priority queues are obtained by placing a nonmeldable priority queues at each node of a union-find data structure. We also show that when all keys are integers in the range [1, N], we can replace n in the bound stated previously by minln, Nr.Applying this result to the nonmeldable priority queue data structures obtained recently by Thorup [2002b] and by Han and Thorup [2002] we obtain meldable RAM priority queues with O(log log n) amortized time per operation, or O(√log log n) expected amortized time per operation, respectively. As a by-product, we obtain improved algorithms for the minimum directed spanning tree problem on graphs with integer edge weights, namely, a deterministic O(m log log n)-time algorithm and a randomized O(m√log log n)-time algorithm. For sparse enough graphs, these bounds improve on the O(m p n log n) running time of an algorithm by Gabow et al. [1986] that works for arbitrary edge weights.

13 citations


01 Jan 2006
TL;DR: This thesis shows how these two approaches can be combined (with very little overhead) to produce a data structure that is at least as generic as any other, very easy to adapt, and as practical as ST-trees.
Abstract: The dynamic trees problem is that of maintaining a forest that changes over time through edge insertions and deletions. We can associate data with vertices or edges and manipulate this data, individually or in bulk, with operations that deal with whole paths or trees. Efficient solutions to this problem have numerous applications, particularly in algorithms for network flows and dynamic graphs in general. Several data structures capable of logarithmic-time dynamic tree operations have been proposed. The first was Sleator and Tarjan's ST-tree, which represents a partition of the tree into paths. Although reasonably fast in practice, adapting ST-trees to different applications is nontrivial. Frederickson's topology trees, Alstrup et al.'s top trees, and Acar et al.'s RC-trees are based on tree contractions: they progressively combine vertices or edges to obtain a hierarchical representation of the tree. This approach is more flexible in theory, but all known implementations assume the trees have bounded degree; arbitrary trees are supported only after ternarization. This thesis shows how these two approaches can be combined (with very little overhead) to produce a data structure that is at least as generic as any other, very easy to adapt, and as practical as ST-trees. It can be seen as a self-adjusting implementation of top trees and provides a logarithmic bound per operation in the amortized sense. We also discuss a pure contraction-based implementation of top trees, which is more involved but guarantees a logarithmic bound in the worst case. Finally, an experimental evaluation of these two data structures, including a comparison with previous methods, is presented.

13 citations


Patent
31 Jul 2006
TL;DR: In this paper, a method for discovery of a cluster of objects in an arbitrary undirected graph is presented, where a subset of objects is determined by performing a random walk starting from a first object of the objects and following a plurality of random edges of subsequent objects, the subset comprising the first object and subsequent objects.
Abstract: A method for discovery of a cluster of objects in an arbitrary undirected graph. A subset of the objects is determined by performing a random walk starting from a first object of the objects and following a plurality of random edges of subsequent objects, the subset comprising the first object and the subsequent objects. An enlarged subset is determined by enlarging the subset to include other objects well-connected to the subset. It is determined whether the enlarged subset is a cluster.

5 citations


Patent
09 Jun 2006
TL;DR: In this paper, a representation of a network having vertices connected by arcs is provided, where the network exhibits a pseudoflow and arcs on which moves are to be performed are iteratively chosen for balancing excesses of vertices across the arcs until a stopping rule is satisfied.
Abstract: A representation of a network having vertices connected by arcs is provided, where the network exhibits a pseudoflow. Arcs on which moves are to be performed are iteratively chosen for balancing excesses of vertices across the arcs until a stopping rule is satisfied. After the stopping rule is satisfied, further processing is performed to identify at least one of a minimum cut and/or maximum flow.

2 citations


Proceedings Article
01 Jan 2006
TL;DR: It is shown that a standard monotonic parametric maximum flow problem can be formulated as a problem of computing a particular maximum flow that is balanced in an appropriate sense, and a divide-and-conquer algorithm is presented to compute such a balanced flow in a logarithmic number of ordinary maximum-flow computations.
Abstract: We explore balancing as a definitional and algorithmic tool for finding minimum cuts and maximum flows in ordinary and parametric networks. We show that a standard monotonic parametric maximum flow problem can be formulated as a problem of computing a particular maximum flow that is balanced in an appropriate sense. We present a divide-and-conquer algorithm to compute such a balanced flow in a logarithmic number of ordinary maximum-flow computations. For the special case of a bipartite network, we present two simple, local algorithms for computing a balanced flow. The local balancing idea becomes even simpler when applied to the ordinary maximum flow problem. For this problem, we present a round-robin arc-balancing algorithm that computes a maximum flow on an n-vertex, m-arc network with integer arc capacities of at most U in O(n 2 m log(nU)) time. Although this algorithm is slower by at least a factor of n than other known algorithms, it is extremely simple and well-suited to parallel and distributed implementation.

1 citations