3,330 research outputs found
Balancing Minimum Spanning and Shortest Path Trees
This paper give a simple linear-time algorithm that, given a weighted
digraph, finds a spanning tree that simultaneously approximates a shortest-path
tree and a minimum spanning tree. The algorithm provides a continuous
trade-off: given the two trees and epsilon > 0, the algorithm returns a
spanning tree in which the distance between any vertex and the root of the
shortest-path tree is at most 1+epsilon times the shortest-path distance, and
yet the total weight of the tree is at most 1+2/epsilon times the weight of a
minimum spanning tree. This is the best tradeoff possible. The paper also
describes a fast parallel implementation.Comment: conference version: ACM-SIAM Symposium on Discrete Algorithms (1993
On Minimum Average Stretch Spanning Trees in Polygonal 2-trees
A spanning tree of an unweighted graph is a minimum average stretch spanning
tree if it minimizes the ratio of sum of the distances in the tree between the
end vertices of the graph edges and the number of graph edges. We consider the
problem of computing a minimum average stretch spanning tree in polygonal
2-trees, a super class of 2-connected outerplanar graphs. For a polygonal
2-tree on vertices, we present an algorithm to compute a minimum average
stretch spanning tree in time. This algorithm also finds a
minimum fundamental cycle basis in polygonal 2-trees.Comment: 17 pages, 12 figure
The Power of Dynamic Distance Oracles: Efficient Dynamic Algorithms for the Steiner Tree
In this paper we study the Steiner tree problem over a dynamic set of
terminals. We consider the model where we are given an -vertex graph
with positive real edge weights, and our goal is to maintain a tree
which is a good approximation of the minimum Steiner tree spanning a terminal
set , which changes over time. The changes applied to the
terminal set are either terminal additions (incremental scenario), terminal
removals (decremental scenario), or both (fully dynamic scenario). Our task
here is twofold. We want to support updates in sublinear time, and keep
the approximation factor of the algorithm as small as possible. We show that we
can maintain a -approximate Steiner tree of a general graph in
time per terminal addition or removal. Here,
denotes the stretch of the metric induced by . For planar graphs we achieve
the same running time and the approximation ratio of .
Moreover, we show faster algorithms for incremental and decremental scenarios.
Finally, we show that if we allow higher approximation ratio, even more
efficient algorithms are possible. In particular we show a polylogarithmic time
-approximate algorithm for planar graphs.
One of the main building blocks of our algorithms are dynamic distance
oracles for vertex-labeled graphs, which are of independent interest. We also
improve and use the online algorithms for the Steiner tree problem.Comment: Full version of the paper accepted to STOC'1
I/O-optimal algorithms on grid graphs
Given a graph of which the n vertices form a regular two-dimensional grid,
and in which each (possibly weighted and/or directed) edge connects a vertex to
one of its eight neighbours, the following can be done in O(scan(n)) I/Os,
provided M = Omega(B^2): computation of shortest paths with non-negative edge
weights from a single source, breadth-first traversal, computation of a minimum
spanning tree, topological sorting, time-forward processing (if the input is a
plane graph), and an Euler tour (if the input graph is a tree). The
minimum-spanning tree algorithm is cache-oblivious. The best previously
published algorithms for these problems need Theta(sort(n)) I/Os. Estimates of
the actual I/O volume show that the new algorithms may often be very efficient
in practice.Comment: 12 pages' extended abstract plus 12 pages' appendix with details,
proofs and calculations. Has not been published in and is currently not under
review of any conference or journa
Linear-Time Algorithms for Geometric Graphs with Sublinearly Many Edge Crossings
We provide linear-time algorithms for geometric graphs with sublinearly many
crossings. That is, we provide algorithms running in O(n) time on connected
geometric graphs having n vertices and k crossings, where k is smaller than n
by an iterated logarithmic factor. Specific problems we study include Voronoi
diagrams and single-source shortest paths. Our algorithms all run in linear
time in the standard comparison-based computational model; hence, we make no
assumptions about the distribution or bit complexities of edge weights, nor do
we utilize unusual bit-level operations on memory words. Instead, our
algorithms are based on a planarization method that "zeroes in" on edge
crossings, together with methods for extending planar separator decompositions
to geometric graphs with sublinearly many crossings. Incidentally, our
planarization algorithm also solves an open computational geometry problem of
Chazelle for triangulating a self-intersecting polygonal chain having n
segments and k crossings in linear time, for the case when k is sublinear in n
by an iterated logarithmic factor.Comment: Expanded version of a paper appearing at the 20th ACM-SIAM Symposium
on Discrete Algorithms (SODA09
Minimum cycle and homology bases of surface embedded graphs
We study the problems of finding a minimum cycle basis (a minimum weight set
of cycles that form a basis for the cycle space) and a minimum homology basis
(a minimum weight set of cycles that generates the -dimensional
()-homology classes) of an undirected graph embedded on a
surface. The problems are closely related, because the minimum cycle basis of a
graph contains its minimum homology basis, and the minimum homology basis of
the -skeleton of any graph is exactly its minimum cycle basis.
For the minimum cycle basis problem, we give a deterministic
-time algorithm for graphs embedded on an orientable
surface of genus . The best known existing algorithms for surface embedded
graphs are those for general graphs: an time Monte Carlo
algorithm and a deterministic time algorithm. For the
minimum homology basis problem, we give a deterministic -time algorithm for graphs embedded on an orientable or non-orientable
surface of genus with boundary components, assuming shortest paths are
unique, improving on existing algorithms for many values of and . The
assumption of unique shortest paths can be avoided with high probability using
randomization or deterministically by increasing the running time of the
homology basis algorithm by a factor of .Comment: A preliminary version of this work was presented at the 32nd Annual
International Symposium on Computational Geometr
- …