Thomas H. Spencer
Rensselaer Polytechnic Institute
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Thomas H. Spencer.
Combinatorica | 1986
Harold N. Gabow; Zvi Galil; Thomas H. Spencer; Robert Endre Tarjan
Recently, Fredman and Tarjan invented a new, especially efficient form of heap (priority queue). Their data structure, theFibonacci heap (or F-heap) supports arbitrary deletion inO(logn) amortized time and other heap operations inO(1) amortized time. In this paper we use F-heaps to obtain fast algorithms for finding minimum spanning trees in undirected and directed graphs. For an undirected graph containingn vertices andm edges, our minimum spanning tree algorithm runs inO(m logβ (m, n)) time, improved fromO(mβ(m, n)) time, whereβ(m, n)=min {i|log(i)n ≦m/n}. Our minimum spanning tree algorithm for directed graphs runs inO(n logn + m) time, improved fromO(n log n +m log log log(m/n+2)n). Both algorithms can be extended to allow a degree constraint at one vertex.
Journal of the ACM | 1989
Harold N. Gabow; Zvi Galil; Thomas H. Spencer
The (<italic>component</italic>) <italic>merging problem</italic> is a new graph problem. Versions of this problem appear as bottlenecks in various graph algorithms. A new data structure solves this problem efficiently, and two special cases of the problem have even more efficient solutions based on other data structures. The performance of the data structures is sped up by introducing a new algorithmic tool called <italic>packets</italic>. The algorithms that use these solutions to the component merging problem also exploit new properties of two existing data structures. Specifically, Β-trees can be used simultaneously as a priority queue and a concatenable queue. Similarly, F-heaps support some kinds of split operations with no loss of efficiency. An immediate application of the solution to the simplest version of the merging problem is an &Ogr;(<italic>t</italic>(<italic>m</italic>, <italic>n</italic>)) algorithm for finding minimum spanning trees in undirected graphs <italic>without</italic> using F-heaps, where <italic>t</italic>(<italic>m</italic>, <italic>n</italic>) = <italic>m</italic>log<subscrpt>2</subscrpt>log<subscrpt>2</subscrpt>log<subscrpt>d</subscrpt><italic>n</italic>, the graph has <italic>n</italic> vertices and <italic>m</italic> edges, and <italic>d</italic> = max(<italic>m</italic>/<italic>n</italic>, 2). Packets also improve the F-heap minimum spanning tree algorithm, giving the fastest algorithm currently known for this problem. The efficient solutions to the merging problem and the new observation about F-heaps lead to an &Ogr;(<italic>n</italic>(<italic>t</italic>(<italic>m</italic>, <italic>n</italic>) + <italic>n</italic>log<italic>n</italic>)) algorithm for finding a maximum weighted matching in general graphs. This settles an open problem posed by Tarjan [ 15, p. 123], where the weaker bound of <italic>O</italic>(<italic>nm</italic> log (<italic>n</italic><supscrpt>2</supscrpt>/<italic>m</italic>)) was conjectured.
SIAM Journal on Discrete Mathematics | 1989
Mark K. Goldberg; Thomas H. Spencer
The problem of constructing in parallel a maximal independent set of a given graph is considered. A new deterministic NC-algorithm implemented in the EREW PRAM model is presented. On graphs with n vertices and m edges, it uses
symposium on the theory of computing | 1993
David Eppstein; Zvi Galil; Giuseppe F. Italiano; Thomas H. Spencer
O((n + m)/\log n)
foundations of computer science | 1984
Harold N. Gabow; Zvi Galil; Thomas H. Spencer
processors and runs in
Journal of Computer and System Sciences | 1996
David Eppstein; Zvi Galil; Giuseppe F. Italiano; Thomas H. Spencer
O(\log^3 n)
Journal of Algorithms | 1999
Hanmao Shi; Thomas H. Spencer
time. This reduces by a factor of
foundations of computer science | 1987
Mark K. Goldberg; Thomas H. Spencer
\log n
European Journal of Operational Research | 1995
Yi-Hsin Liu; Thomas H. Spencer
both the running time and the processor count of the previously fastest deterministic algorithm that solves the problem using a linear number of processors.
SIAM Journal on Computing | 1999
David Eppstein; Zvi Galil; Giuseppe F. Italiano; Thomas H. Spencer
We describe algorithms and data structures for maintaining a dynamic planar graph subject to edge insertions and edge deletions that preserve planarity but that can change the embedding. We give a fully dynamic planarity testing algorithm that maintains a graph subject to edge insertions and deletions, and allows queries that test whether the graph is currently planar, or whether a potential new edge would violate planarity, in amortized time O(nl 12) per update or query. We maintain the 2and 3-vertex-connected components, and the 3and 4-edge-connected components of a planar graph in O(n.llz ) time per insertion, deletion or query. We give fully dynamic algorithms for maintaining the connected components, the 2-edge-connected components, and the minimum spanning forest of a planar graph in time (9(log n) per insertion and 0(log2 n) per deletion, assuming that insertions keep the graph planar. All our algorithms improve previous bounds: the improvements are based upon a new type of sparsification combined wit h several properties of separators in planar graphs.