scispace - formally typeset
Search or ask a question

Showing papers on "Prim's algorithm published in 1993"


Proceedings ArticleDOI
03 May 1993
TL;DR: A new tree construction is proposed for performance-driven global routing which directly trades off between Prim's minimum spanning tree algorithm and Dijkstra's shortest path tree algorithm, achieving routing trees which satisfy a given routing tree radius bound while using less wire than previous methods.
Abstract: Motivated by analysis of distributed RC delay in routing trees, a new tree construction is proposed for performance-driven global routing which directly trades off between Prim's minimum spanning tree algorithm and Dijkstra's shortest path tree algorithm. This direct combination of two objective functions and their corresponding optimal algorithms contrasts with the more indirect 'shallow-light' methods. The authors' method achieves routing trees which satisfy a given routing tree radius bound while using less wire than previous methods. Detailed simulations show that these wirelength savings translate into significantly improved delay over standard MST routing in both IC and multichip module (MCM) interconnect technologies. >

67 citations


Proceedings ArticleDOI
01 Jan 1993
TL;DR: It is shown that there is a continuous tradeoff between the two parameters of the minimum spanning tree and the distance bet, and that no algorithm can achieve better factors in all graphs, because there are no graphs that do not have better trees.
Abstract: Efficient algorithms are known for computing a minimum spann.ing tree, or a shortest path. tree (with a fixed vertex as the root). The weight of a shortest path tree can be much more than the weight of a minimum spa,nning tree. Conversely, the distance bet,ween the root, and any vertex in a minimum spanning tree may be much more than the distance bet#ween the two vertices in the graph. Consider the problem of balancing between the two kinds of trees: Does every graph contain a tree that is “light” (at most a constant times heavier than the minimum spanning t,ree), such that the distance from the root to any vertex in t,he tree is no more than a constant times the true distance? This paper answers the question in the affirmative. It is shown that there is a continuous tradeoff between the two parameters. For every y > 0, there is a tree in the graph whose total weight is at most 1 + $? times the weight of a minimum spanning tree, such that the di&nce in the tree between the root, and any vertex is at, most 1 + &y times the true distance. Efficient sequential and parallel algorithms achieving these factors are provided. The algorithms are shown to be optimal in two ways. First, it is shown that no algorithm can achieve better factors in all graphs, because there a.re graphs that do not have better trees. Second, it is shown that even on a per-graph basis, finding trees that achieve better factors is NP-hard.

44 citations


Journal ArticleDOI
TL;DR: The most vital edges problem is to find a set of edges such that the total removal cost is not greater than the available budget and whose removal from G ( N); A results in the greatest increase in the total weight of a minimum spanning tree.

34 citations


Proceedings Article
01 Jan 1993
TL;DR: In this paper, the authors give a simple algorithm to find a spanning tree that simultaneously approximates a shortest-path tree and a minimum spanning tree and obtains the best possible tradeoff.
Abstract: We give a simple algorithm to find a spanning tree that simultaneously approximates a shortest-path tree and a minimum spanning tree. The algorithm provides a continuous tradeoff: given the two trees and aź>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+ź2ź times the shortest-path distance, and yet the total weight of the tree is at most 1+ź2/ź times the weight of a minimum spanning tree. Our algorithm runs in linear time and obtains the best-possible tradeoff. It can be implemented on a CREW PRAM to run a logarithmic time using one processor per vertex.

30 citations


Book ChapterDOI
02 Jun 1993
TL;DR: The algorithm can be applied to the case of unbounded alphabets by increasing the time complexity to O(n log n) by assuming the size of the alphabet is bounded by a constant.
Abstract: In this paper, we describe a linear time algorithm for testing whether or not there is a path of a tree T (¦V(T)¦= n) that coincides with a string s (¦s¦ = m). In the algorithm, O(n/m) vertices are selected from V(T) such that any path of length more than m −2 must contain at least one of the selected vertices. A search is performed using the selected vertices as ‘bases’. A suffix tree is used effectively in the algorithm. Although the size of the alphabet is assumed to be bounded by a constant in this paper, the algorithm can be applied to the case of unbounded alphabets by increasing the time complexity to O(n log n).

30 citations


Proceedings ArticleDOI
13 Apr 1993
TL;DR: The authors present a parallel algorithm for the multiple edge update problem on a minimum spanning tree that is optimal for dense graphs, if no intermediate results are available from computing the original MST.
Abstract: The authors present a parallel algorithm for the multiple edge update problem on a minimum spanning tree. This problem is defined as follows: given a minimum spanning tree T(V,E/sub T/) of an undirected graph G(V,E), where mod V mod =n and E/sub T/ is the set of tree edges, recompute a new minimum spanning tree when (1) adding K new edges, (2) changing the weights of existent K edges, or (3) deleting a vertex of degree K in the tree, where 1 >

13 citations


Journal ArticleDOI
TL;DR: The new approximation algorithm does not need to solve a linear programming problem, nor such a formulation is needed to establish its approximation bound, and takes linear time with respect to the number of nodes and edges in the graph, and generates solutions that are within twice the weight of a minimum weight vertex cover.

11 citations


Journal ArticleDOI
TL;DR: A parallel algorithm for constructing a minimum spanning tree of a connected, weighted, undirected graph in O(log m ) time using O( m + n ) processors is presented for an SIMD machine where m and n denote the number of edges and vertices respectively.

7 citations


Journal ArticleDOI
TL;DR: A distributed algorithm for updating a minimum spanning tree when a new vertex is added to the underlying network (a connected, undirected, weighted graph) is presented and it is found that this result is superior to the previously known result.
Abstract: A distributed algorithm for updating a minimum spanning tree when a new vertex is added to the underlying network (a connected, undirected, weighted graph) is presented. The algorithm runs asynchronously and the processor at each vertex of the network is required to know only information concerning its adjacent edges. The number of messages transmitted is bounded by 6N and the time complexity is O(H) where N and H(⩽N) are the number of vertices and the height of the original minimum spanning tree, respectively. Each message contains at most an edge weight and a few bits. This result is superior to the previously known result as well as that of using the best known distributed minimum spanning tree algorithm to construct a minimum spanning tree for the new network from scratch. The algorithm is extended to handle k(⩾1) vertex insertions. The resulting time and message complexities are O (k ∗ max (H, H 1 ,…,H k−1 )) and O(kN + k2) respectively, where Hi is the height of the MST after i new vertices have been handled. The algorithm can be modified to handle edge insertions within same time and message bounds.

2 citations


Journal ArticleDOI
TL;DR: An efficient parallel algorithm is proposed for finding a minimum spanning tree, with the aid of content-addressable memory, and actual implementation shows approximately O(n) speedup.
Abstract: An efficient parallel algorithm is proposed for finding a minimum spanning tree, with the aid of content-addressable memory. Operations such as minimum-value search and updating the active edges are implemented in an efficient manner. The algorithm has O(n) complexity, where n is the number of nodes. An example is given and compared with a conventional algorithm. Actual implementation shows approximately O(n) speedup. >

2 citations