Results 1  10
of
117
Fractional cascading: I. A data structuring technique
 Algorithmica
, 1986
"... Abstract. In computational geometry many search problems and range queries can be solved by performing an iterative search for the same key in separate ordered lists. In this paper we show that, if these ordered lists can be put in a onetoone correspondence with the nodes of a graph of degree d so ..."
Abstract

Cited by 156 (5 self)
 Add to MetaCart
Abstract. In computational geometry many search problems and range queries can be solved by performing an iterative search for the same key in separate ordered lists. In this paper we show that, if these ordered lists can be put in a onetoone correspondence with the nodes of a graph of degree d so that the iterative search always proceeds along edges of that graph, then we can do much better than the obvious sequence of binary searches. Without expanding the storage by more than a constant factor, we can build a datastructure, called a fractional cascading structure, in which all original searches after the first can be carried out at only log d extra cost per search. Several results related to the dynamization of this structure are also presented. A companion paper gives numerous applications of this technique to geometric problems.
Modular Decomposition and Transitive Orientation
, 1999
"... A module of an undirected graph is a set X of nodes such for each node x not in X, either every member of X is adjacent to x, or no member of X is adjacent to x. There is a canonical linearspace representation for the modules of a graph, called the modular decomposition. Closely related to modular ..."
Abstract

Cited by 87 (13 self)
 Add to MetaCart
A module of an undirected graph is a set X of nodes such for each node x not in X, either every member of X is adjacent to x, or no member of X is adjacent to x. There is a canonical linearspace representation for the modules of a graph, called the modular decomposition. Closely related to modular decomposition is the transitive orientation problem, which is the problem of assigning a direction to each edge of a graph so that the resulting digraph is transitive. A graph is a comparability graph if such an assignment is possible. We give O(n +m) algorithms for modular decomposition and transitive orientation, where n and m are the number of vertices and edges of the graph. This gives linear time bounds for recognizing permutation graphs, maximum clique and minimum vertex coloring on comparability graphs, and other combinatorial problems on comparability graphs and their complements.
Topologically Sweeping Visibility Complexes via Pseudotriangulations
, 1996
"... This paper describes a new algorithm for constructing the set of free bitangents of a collection of n disjoint convex obstacles of constant complexity. The algorithm runs in time O(n log n + k), where k is the output size, and uses O(n) space. While earlier algorithms achieve the same optimal run ..."
Abstract

Cited by 85 (9 self)
 Add to MetaCart
This paper describes a new algorithm for constructing the set of free bitangents of a collection of n disjoint convex obstacles of constant complexity. The algorithm runs in time O(n log n + k), where k is the output size, and uses O(n) space. While earlier algorithms achieve the same optimal running time, this is the first optimal algorithm that uses only linear space. The visibility graph or the visibility complex can be computed in the same time and space. The only complicated data structure used by the algorithm is a splittable queue, which can be implemented easily using redblack trees. The algorithm is conceptually very simple, and should therefore be easy to implement and quite fast in practice. The algorithm relies on greedy pseudotriangulations, which are subgraphs of the visibility graph with many nice combinatorial properties. These properties, and thus the correctness of the algorithm, are partially derived from properties of a certain partial order on the faces of th...
Internet Packet Filter Management and Rectangle Geometry
, 2001
"... We consider rule sets for internet packet routing and filtering, where each rule consists of a range of source addresses, a range of destination addresses, a priority, and an action. A given packet should be handled by the action from the maximum priority rule that matches its source and destination ..."
Abstract

Cited by 69 (1 self)
 Add to MetaCart
We consider rule sets for internet packet routing and filtering, where each rule consists of a range of source addresses, a range of destination addresses, a priority, and an action. A given packet should be handled by the action from the maximum priority rule that matches its source and destination. We describe new data structures for quickly finding the rule matching an incoming packet, in nearlinear space, and a new algorithm for determining whether a rule set contains any conflicts, in time O(n 3/2 ). 1 Introduction The working of the current Internet and its posited evolution depend on efficient packet filtering mechanisms: databases of rules, maintained at various parts of the network, which use patterns to filter out sets of IP packets and specify actions to be performed on those sets. Typical filter patterns are based on packet header information such as the source or destination IP addresses. The actions to be performed depend on where the packet filtering is performed i...
Verification and Sensitivity Analysis Of Minimum Spanning Trees In Linear Time
 SIAM J. Comput
, 1992
"... . Koml'os has devised a way to use a linear number of binary comparisons to test whether a given spanning tree of a graph with edge costs is a minimum spanning tree. The total computational work required by his method is much larger than linear, however. We describe a lineartime algorithm for verif ..."
Abstract

Cited by 54 (2 self)
 Add to MetaCart
. Koml'os has devised a way to use a linear number of binary comparisons to test whether a given spanning tree of a graph with edge costs is a minimum spanning tree. The total computational work required by his method is much larger than linear, however. We describe a lineartime algorithm for verifying a minimum spanning tree. Our algorithm combines the result of Koml'os with a preprocessing and table lookup method for small subproblems and with a previously known almostlineartime algorithm. Additionally, we present an optimal deterministic algorithm and a lineartime randomized algorithm for sensitivity analysis of minimum spanning trees. 1. Introduction. Suppose we wish to solve some problem for which we know in advance the size of the input data, using an algorithm from some welldefined class of algorithms. For example, consider sorting n numbers, when n is fixed in advance, using a binary comparison tree. Given a sufficient amount of preprocessing time and storage space, we ca...
Marked Ancestor Problems
, 1998
"... Consider a rooted tree whose nodes can be marked or unmarked. Given a node, we want to find its nearest marked ancestor. This generalises the wellknown predecessor problem, where the tree is a path. ..."
Abstract

Cited by 50 (6 self)
 Add to MetaCart
Consider a rooted tree whose nodes can be marked or unmarked. Given a node, we want to find its nearest marked ancestor. This generalises the wellknown predecessor problem, where the tree is a path.
Undirected Single Source Shortest Paths in Linear Time
 J. Assoc. Comput. Mach
, 1997
"... The single source shortest paths problem (SSSP) is one of the classic problems in algorithmic graph theory: given a weighted graph G with a source vertex s, find the shortest path from s to all other vertices in the graph. Since 1959 all theoretical developments in SSSP have been based on Dijkstra' ..."
Abstract

Cited by 49 (3 self)
 Add to MetaCart
The single source shortest paths problem (SSSP) is one of the classic problems in algorithmic graph theory: given a weighted graph G with a source vertex s, find the shortest path from s to all other vertices in the graph. Since 1959 all theoretical developments in SSSP have been based on Dijkstra's algorithm, visiting the vertices in order of increasing distance from s. Thus, any implementation of Dijkstra 's algorithm sorts the vertices according to their distances from s. However, we do not know how to sort in linear time. Here, a deterministic linear time and linear space algorithm is presented for the undirected single source shortest paths problem with integer weights. The algorithm avoids the sorting bottleneck by building a hierechical bucketing structure, identifying vertex pairs that may be visited in any order. 1 Introduction Let G = (V; E), jV j = n, jEj = m, be an undirected connected graph with an integer edge weight function ` : E ! N and a distinguished source vertex...
A THEORY OF ALTERNATING PATHS AND BLOSSOMS FOR PROVING CORRECTNESS OF THE O(√VE) GENERAL GRAPH MAXIMUM MATCHING ALGORITHM
, 1994
"... ..."
A fast and simple algorithm for bounds consistency of the alldifferent constraint
 IN PROCEEDINGS OF THE 18TH INTERNATIONAL JOINT CONFERENCE ON ARTIFICIAL INTELLIGENCE
, 2003
"... In constraint programming one models a problem by stating constraints on acceptable solutions. The constraint model is then usually solved by interleaving backtracking search and constraint propagation. Previous studies have demonstrated that designing special purpose constraint propagators for comm ..."
Abstract

Cited by 37 (9 self)
 Add to MetaCart
In constraint programming one models a problem by stating constraints on acceptable solutions. The constraint model is then usually solved by interleaving backtracking search and constraint propagation. Previous studies have demonstrated that designing special purpose constraint propagators for commonly occurring constraints can significantly improve the efficiency of a constraint programming approach. In this paper we present a fast, simple algorithm for bounds consistency propagation of the alldifferent constraint. The algorithm has the same worst case behavior as the previous best algorithm but is much faster in practice. Using a variety of benchmark and random problems, we show that our algorithm outperforms existing bounds consistency algorithms and also outperforms—on problems with an easily identifiable property—stateoftheart commercial implementations of propagators for stronger forms of local consistency.
Lowest common ancestors in trees and directed acyclic graphs
 J. Algorithms
, 2005
"... We study the problem of finding lowest common ancestors (LCA) in trees and directed acyclic graphs (DAGs). Specifically, we extend the LCA problem to DAGs and study the LCA variants that arise in this general setting. We begin with a clear exposition of Berkman and Vishkin’s simple optimal algorithm ..."
Abstract

Cited by 35 (0 self)
 Add to MetaCart
We study the problem of finding lowest common ancestors (LCA) in trees and directed acyclic graphs (DAGs). Specifically, we extend the LCA problem to DAGs and study the LCA variants that arise in this general setting. We begin with a clear exposition of Berkman and Vishkin’s simple optimal algorithm for LCA in trees. The ideas presented are not novel theoretical contributions, but they lay the foundation for our work on LCA problems in DAGs. We present an algorithm that finds allpairsrepresentative LCA in DAGs in Õ(n 2.688) operations, provide a transitiveclosure lower bound for the allpairsrepresentativeLCA problem, and develop an LCAexistence algorithm that preprocesses the DAG in transitiveclosure time. We also present a suboptimal but practical O(n 3) algorithm for allpairsrepresentative LCA in DAGs that uses ideas from the optimal algorithms in trees and DAGs. Our results reveal a close relationship between the LCA, allpairsshortestpath, and transitiveclosure problems. We conclude the paper with a short experimental study of LCA algorithms in trees and DAGs. Our experiments and source code demonstrate the elegance of the preprocessingquery algorithms for LCA in trees. We show that for most trees the suboptimal Θ(n log n)preprocessing Θ(1)query algorithm should be preferred, and demonstrate that our proposed O(n 3) algorithm for allpairsrepresentative LCA in DAGs performs well in both low and high density DAGs.