4,596 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
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
Spanning trees short or small
We study the problem of finding small trees. Classical network design
problems are considered with the additional constraint that only a specified
number of nodes are required to be connected in the solution. A
prototypical example is the MST problem in which we require a tree of
minimum weight spanning at least nodes in an edge-weighted graph. We show
that the MST problem is NP-hard even for points in the Euclidean plane. We
provide approximation algorithms with performance ratio for the
general edge-weighted case and for the case of points in the
plane. Polynomial-time exact solutions are also presented for the class of
decomposable graphs which includes trees, series-parallel graphs, and bounded
bandwidth graphs, and for points on the boundary of a convex region in the
Euclidean plane. We also investigate the problem of finding short trees, and
more generally, that of finding networks with minimum diameter. A simple
technique is used to provide a polynomial-time solution for finding -trees
of minimum diameter. We identify easy and hard problems arising in finding
short networks using a framework due to T. C. Hu.Comment: 27 page
Optimal decremental connectivity in planar graphs
We show an algorithm for dynamic maintenance of connectivity information in
an undirected planar graph subject to edge deletions. Our algorithm may answer
connectivity queries of the form `Are vertices and connected with a
path?' in constant time. The queries can be intermixed with any sequence of
edge deletions, and the algorithm handles all updates in time. This
results improves over previously known time algorithm
- …