Results 1  10
of
50
Minimum Cuts in NearLinear Time
, 1999
"... We significantly improve known time bounds for solving the minimum cut problem on undirected graphs. We use a "semiduality" between minimum cuts and maximum spanning tree packings combined with our previously developed random sampling techniques. We give a randomized (Monte Carlo) algorit ..."
Abstract

Cited by 88 (12 self)
 Add to MetaCart
We significantly improve known time bounds for solving the minimum cut problem on undirected graphs. We use a "semiduality" between minimum cuts and maximum spanning tree packings combined with our previously developed random sampling techniques. We give a randomized (Monte Carlo) algorithm that finds a minimum cut in an medge, nvertex graph with high probability in O(m log³ n) time. We also give a simpler randomized algorithm that finds all minimum cuts with high probability in O(n² log n) time. This variant has an optimal RNC parallelization. Both variants improve on the previous best time bound of O(n² log³ n). Other applications of the treepacking approach are new, nearly tight bounds on the number of near minimum cuts a graph may have and a new data structure for representing them in a spaceefficient manner.
Dynamic Graph Algorithms
, 1999
"... Introduction In many applications of graph algorithms, including communication networks, graphics, assembly planning, and VLSI design, graphs are subject to discrete changes, such as additions or deletions of edges or vertices. In the last decade there has been a growing interest in such dynamicall ..."
Abstract

Cited by 63 (1 self)
 Add to MetaCart
Introduction In many applications of graph algorithms, including communication networks, graphics, assembly planning, and VLSI design, graphs are subject to discrete changes, such as additions or deletions of edges or vertices. In the last decade there has been a growing interest in such dynamically changing graphs, and a whole body of algorithms and data structures for dynamic graphs has been discovered. This chapter is intended as an overview of this field. In a typical dynamic graph problem one would like to answer queries on graphs that are undergoing a sequence of updates, for instance, insertions and deletions of edges and vertices. The goal of a dynamic graph algorithm is to update efficiently the solution of a problem after dynamic changes, rather than having to recompute it from scratch each time. Given their powerful versatility, it is not surprising that dynamic algorithms and dynamic data structures are often more difficult to design and analyze than their static c
Fully dynamic algorithms for chordal graphs
, 2001
"... We present the first dynamic algorithm that maintains a clique tree representation of a chordal graph and supports the following operations: (1) query whether deleting or inserting an arbitrary edge preserves chordality, (2) delete or insert an arbitrary edge, provided it preserves chordality. We gi ..."
Abstract

Cited by 34 (2 self)
 Add to MetaCart
(Show Context)
We present the first dynamic algorithm that maintains a clique tree representation of a chordal graph and supports the following operations: (1) query whether deleting or inserting an arbitrary edge preserves chordality, (2) delete or insert an arbitrary edge, provided it preserves chordality. We give two implementations. In the first, each operation runs in O(n) time, where n is the number of vertices. In the second, an insertion query runs in O(log² n) time, an insertion in O(n) time, a deletion query in O(n) time, and a deletion in O(n log n) time. We also present a data structure that allows a deletion query to run in O ( p m) time in either implementation, where m is the current number of edges. Updating this data structure after a deletion or insertion requires O(m) time. We also present a very simple dynamic algorithm that supports each of the following operations in O(1) time on a general graph: (1) query whether the graph is split, (2) delete or insert an arbitrary edge.
A Fully Dynamic Algorithm for Recognizing and Representing Proper Interval Graphs
 SIAM J. COMPUT
, 1999
"... In this paper we study the problem of recognizing and representing dynamically changing proper interval graphs. The input to the problem consists of a series of modifications to be performed on a graph, where a modification can be a deletion or an addition of a vertex or an edge. The objective is to ..."
Abstract

Cited by 28 (1 self)
 Add to MetaCart
In this paper we study the problem of recognizing and representing dynamically changing proper interval graphs. The input to the problem consists of a series of modifications to be performed on a graph, where a modification can be a deletion or an addition of a vertex or an edge. The objective is to maintain a representation of the graph as long as it remains a proper interval graph, and to detect when it ceases to be so. The representation should enable one to efficiently construct a realization of the graph by an inclusionfree family of intervals. This problem has important applications in physical mapping of DNA. We give a nearoptimal fully dynamic algorithm for this problem. It operates in time O(log n) per edge insertion or deletion. We prove a close lower bound of\Omega\Gamma/24 n=(log log n + log b)) amortized time per operation, in the cell probe model with wordsize b. We also construct optimal incremental and decremental algorithms for the problem, which handle each edge operation in O(1) time.
Maintaining Minimum Spanning Trees in Dynamic Graphs
 IN PROC. 24TH INTERNATIONAL COLLOQUIUM ON AUTOMATA, LANGUAGES, AND PROGRAMMING (ICALP
, 1997
"... We present the first fully dynamic algorithm for maintaining a minimum spanning tree in time o( # n) per operation. To be precise, the algorithm uses O(n 1/3 log n) amortized time per update operation. The algorithm is fairly simple and deterministic. An immediate consequence is the first fully dyna ..."
Abstract

Cited by 27 (2 self)
 Add to MetaCart
(Show Context)
We present the first fully dynamic algorithm for maintaining a minimum spanning tree in time o( # n) per operation. To be precise, the algorithm uses O(n 1/3 log n) amortized time per update operation. The algorithm is fairly simple and deterministic. An immediate consequence is the first fully dynamic deterministic algorithm for maintaining connectivity and, bipartiteness in amortized time O(n 1/3 log n) per update, with O(1) worst case time per query.
Experimental Analysis of Dynamic Algorithms for the Single Source Shortest Path Problem
 ACM Jounal of Experimental Algorithmics
, 1997
"... In this paper we propose the first experimental study of the fully dynamic single source shortest paths problem on directed graphs with positive real edge weights. In particular, we perform an experimental analysis of three different algorithms: Dijkstra's algorithm, and the two output bound ..."
Abstract

Cited by 26 (3 self)
 Add to MetaCart
In this paper we propose the first experimental study of the fully dynamic single source shortest paths problem on directed graphs with positive real edge weights. In particular, we perform an experimental analysis of three different algorithms: Dijkstra's algorithm, and the two output bounded algorithms proposed by Ramalingam and Reps in [31] and by Frigioni, MarchettiSpaccamela and Nanni in [18], respectively. The main goal of this paper is to provide a first experimental evidence for: (a) the effectiveness of dynamic algorithms for shortest paths with respect to a traditional static approach to this problem; (b) the validity of the theoretical model of output boundedness to analyze dynamic graph algorithms. Beside random generated graphs, useful to capture the "asymptotic" behavior of algorithms, we also develope experiments by considering a widely used graph from the real world, i.e., the Internet graph. Work partially supported by the ESPRIT Long Term Research Project...
An Empirical Study of Dynamic Graph Algorithms
 ACM JOURNAL ON EXPERIMENTAL ALGORITHMICS
, 1996
"... The contributions of this paper are both of theoretical and of experimental nature. From the experimental point of view, we conduct an empirical study on some dynamic connectivity algorithms which where developed recently. In particular, the following implementations were tested and compared with ..."
Abstract

Cited by 23 (4 self)
 Add to MetaCart
The contributions of this paper are both of theoretical and of experimental nature. From the experimental point of view, we conduct an empirical study on some dynamic connectivity algorithms which where developed recently. In particular, the following implementations were tested and compared with simple algorithms: simple sparsification by Eppstein et al. and the recent randomized algorithm by Henzinger and King. In our experiments, we considered both random and nonrandom inputs. Moreover, we present a simplified variant of the algorithm by Henzinger and King, which for random inputs was always faster than the original implementation. For nonrandom inputs, simple sparsification was the fastest algorithm for small sequences of updates; for medium and large sequences of updates, the original algorithm by Henzinger and King was faster. From the theoretical point of view, we analyze the average case running time of simple sparsification and prove that for dynamic random graph...
Dynamic Trees as Search Trees via Euler Tours, Applied to the Network Simplex Algorithm
 Mathematical Programming
, 1997
"... The dynamic tree is an abstract data type that allows the maintenance of a collection of trees subject to joining by adding edges (linking) and splitting by deleting edges (cutting), while at the same time allowing reporting of certain combinations of vertex or edge values. For many applications of ..."
Abstract

Cited by 19 (1 self)
 Add to MetaCart
(Show Context)
The dynamic tree is an abstract data type that allows the maintenance of a collection of trees subject to joining by adding edges (linking) and splitting by deleting edges (cutting), while at the same time allowing reporting of certain combinations of vertex or edge values. For many applications of dynamic trees, values must be combined along paths. For other applications, values must be combined over entire trees. For the latter situation, we show that an idea used originally in parallel graph algorithms, to represent trees by Euler tours, leads to a simple implementation with a time of O(log n) per tree operation, where n is the number of tree vertices. We apply this representation to the implementation of two versions of the network simplex algorithm, resulting in a time of O(log n) per pivot, where n is the number of vertices in the problem network.
Dynamic Subgraph Connectivity with Geometric Applications
 Proc. 34th ACM Sympos. Theory Comput
, 2002
"... Inspired by dynamic connectivity applications in computational geometry, we consider a problem we call dynamic subgraph connectivity : design a data structure for an undirected graph G = (V, E) and a subset of vertices S # V , to support insertions and deletions in S and connectivity queries (are ..."
Abstract

Cited by 18 (4 self)
 Add to MetaCart
(Show Context)
Inspired by dynamic connectivity applications in computational geometry, we consider a problem we call dynamic subgraph connectivity : design a data structure for an undirected graph G = (V, E) and a subset of vertices S # V , to support insertions and deletions in S and connectivity queries (are two vertices connected?) in the subgraph induced by S. We develop the first sublinear, fully dynamic method for this problem for general sparse graphs, using an elegant combination of several simple ideas. Our method requires linear space, # O(E 4#/(3#+3) ) = O(E 0.94 ) amortized update time, and # O(E 1/3 ) query time, where # is the matrix multiplication exponent and # O hides polylogarithmic factors.
Decremental Dynamic Connectivity
 In Proceedings of the 8th ACMSIAM Symposium on Discrete Algorithms (SODA
, 1997
"... We consider Las Vegas randomized dynamic algorithms for online connectivity problems with deletions only. In particular, we show that starting from a graph with m edges and n nodes, we can maintain a spanning forest during m deletions in O(minfn 2 ; m log ng+ p nm log 2:5 n) expected total ti ..."
Abstract

Cited by 18 (1 self)
 Add to MetaCart
(Show Context)
We consider Las Vegas randomized dynamic algorithms for online connectivity problems with deletions only. In particular, we show that starting from a graph with m edges and n nodes, we can maintain a spanning forest during m deletions in O(minfn 2 ; m log ng+ p nm log 2:5 n) expected total time. This is amortized constant time per operation if we start with a complete graph. The deletions may be interspersed with connectivity queries, each of which is answered in constant time. The previous best bound was O(m log 2 n) by Henzinger and Thorup (1996), which covered both insertions and deletions. Our bound is stronger for m=n = !(log n). The result is based on a general randomized reduction of many deletionsonly queries to few deletions and insertions queries. Similar results are thus derived for 2edgeconnectivity, bipartiteness, and qweights minimum spanning tree. For the decremental dynamic kedgeconnectivity problem of deleting the edges of a graph starting with m edges ...