scispace - formally typeset
Search or ask a question

Showing papers by "Gerth Stølting Brodal published in 1999"


Proceedings Article
11 Aug 1999
TL;DR: In this paper, a linear space data structure for maintaining graphs with bounded arboricity is presented, which supports adjacency queries in worst case O(c) time and edge insertions and edge deletions in amortized O(1) and O (c+log n) time, respectively.
Abstract: We present a linear space data structure for maintaining graphs with bounded arboricity--a large class of sparse graphs containing e.g. planar graphs and graphs of bounded treewidth--under edge insertions, edge deletions, and adjacency queries. The data structure supports adjacency queries in worst case O(c) time, and edge insertions and edge deletions in amortized O(1) and O(c+log n) time, respectively, where n is the number of nodes in the graph, and c is the bound on the arboricity.

71 citations


Book ChapterDOI
11 Aug 1999
TL;DR: A linear space data structure for maintaining graphs with bounded arboricity--a large class of sparse graphs containing e.g. planar graphs and graphs of bounded treewidth--under edge insertions, edge deletions, and adjacency queries is presented.
Abstract: We present a linear space data structure for maintaining graphs with bounded arboricity—a large class of sparse graphs containing e.g. planar graphs and graphs of bounded treewidth—under edge insertions, edge deletions, and adjacency queries.

44 citations


Proceedings ArticleDOI
01 Jan 1999
TL;DR: An efficient external-memory dynamic data structure for point location in monotone planar subdivisions and a new variant of B-trees, called leuelbalanced B-Trees, which allow insert, delete, merge, and split operations in O((l+ $ logM,B f) log, N) I/OS (amortized), even if each node stores a pointer to its parent.
Abstract: We present an efficient external-memory dynamic data structure for point location in monotone planar subdivisions. Our data structure uses O(N/B) disk blocks to store a monotone subdivision of size N, where B is the size of a disk block. It supports queries in O(logi N) I/OS (worst-case) and updates in O(lo& N) I/OS (amortized). We also propose a new variant of B-trees, called leuelbalanced B-trees, which allow insert, delete, merge, and split operations in O((l+ $ logM,B f) log, N) I/OS (amortized), 2 5 b 2 B/2, even if each node stores a pointer to its parent. Here M is the size of main memory. Besides being essential to our point-location data structure, we believe that level-balanced B-trees are of significant independent interest. They can, for example, be used to dynamically maintain a planar St-graph using O((1 + $10g~,~ $$) log, N) = O(logi N) I/OS (amortized) per update, so that reachability queries can be answered in O(log, N) I/OS (worst case).

31 citations


Book ChapterDOI
22 Jul 1999
TL;DR: Methods for finding all maximal pairs under various constraints on the gap in a string of length n, which can be seen as a generalization of finding tandem repeats.
Abstract: A pair in a string is the occurrence of the same substring twice. A pair is maximal if the two occurrences of the substring cannot be extended to the left and right without making them different. The gap of a pair is the number of characters between the two occurrences of the substring. In this paper we present methods for finding all maximal pairs under various constraints on the gap. In a string of length n we can find all maximal pairs with gap in an upper and lower bounded interval in time O(n log n+z) where z is the number of reported pairs. If the upper bound is removed the time reduces to O(n+z). Since a tandem repeat is a pair where the gap is zero, our methods can be seen as a generalization of finding tandem repeats. The running time of our methods equals the running time of well known methods for finding tandem repeats.

25 citations


Journal ArticleDOI
TL;DR: In this article, the authors presented methods for finding all maximal pairs with gap in an upper and lower bounded interval in time O(n log n + z, where z is the number of reported pairs.
Abstract: A pair in a string is the occurrence of the same substring twice. A pair is maximal if the two occurrences of the substring cannot be extended to the left and right without making them different. The gap of a pair is the number of characters between the two occurrences of the substring. In this paper we present methods for finding all maximal pairs under various constraints on the gap. In a string of length n we can find all maximal pairs with gap in an upper and lower bounded interval in time O(n log n + z) where z is the number of reported pairs. If the upper bound is removed the time reduces to O(n+z). Since a tandem repeat is a pair where the gap is zero, our methods can be seen as a generalization of finding tandem repeats. The running time of our methods equals the running time of well known methods for finding tandem repeats.

21 citations


Journal ArticleDOI
TL;DR: In this paper, the problem of designing a data structure for a dictionary S of n binary strings each of length m to report if there exists a string in S within Hamming distance d of q was studied.
Abstract: Given a dictionary S of n binary strings each of length m , we consider the problem of designing a data structure for S that supports d -queries; given a binary query string q of length m , a d -query reports if there exists a string in S within Hamming distance d of q . We construct a data structure for the case d=1 , that requires space O (n log m) and has query time O (1) in a cell probe model with word size m . This generalizes and improves the previous bounds of Yao and Yao for the problem in the bit probe model. The data structure can be constructed in randomized expected time O (nm) .

10 citations


Journal ArticleDOI
01 Sep 1999
TL;DR: By applying the k-bandwidth technique, a data structure is obtained for the CREW PRAM which supports MultiInsertk operations in time and MultiExtractMink in time, and a pipelined version of the priority queues adopt to a processor array of size.
Abstract: We present time and work optimal priority queues for the CREW PRAM, supporting F ind M in in constant time with one processor and M ake Q ueue , I nsert , M eld , F ind M in , E xtract M in , D elete and D ecrease K ey in constant time with O ( log n) processors. A priority queue can be build in time O ( log n) with O (n/ log n) processors. A pipelined version of the priority queues adopt to a processor array of size O ( log n) , supporting the operations M ake Q ueue , I nsert , M eld , F ind M in , E xtract M in , D elete and D ecrease K ey in constant time. By applying the k-bandwidth technique we get a data structure for the CREW PRAM which supports M ulti I nsert k operations in O ( log k) time and M ulti E xtract M in k in O ( log log k) time.

8 citations


Journal ArticleDOI
TL;DR: This paper gives an algorithm that finds all maximal quasiperiodic substrings in a string of length n in time O(n log n) and space O( n).
Abstract: Apostolico and Ehrenfeucht defined the notion of a maximal quasiperiodic substring and gave an algorithm that finds all maximal quasiperiodic substrings in a string of length n in time O(n log2 n). In this paper we give an algorithm that finds all maximal quasiperiodic substrings in a string of length n in time O(n log n) and space O(n). Our algorithm uses the suffix tree as the fundamental data structure combined with efficient methods for merging and performing multiple searches in search trees. Besides finding all maximal quasiperiodic substrings, our algorithm also marks the nodes in the suffix tree that have a superprimitive path-label.

3 citations