383 research outputs found
Finding 2-Edge and 2-Vertex Strongly Connected Components in Quadratic Time
We present faster algorithms for computing the 2-edge and 2-vertex strongly
connected components of a directed graph, which are straightforward
generalizations of strongly connected components. While in undirected graphs
the 2-edge and 2-vertex connected components can be found in linear time, in
directed graphs only rather simple -time algorithms were known. We use
a hierarchical sparsification technique to obtain algorithms that run in time
. For 2-edge strongly connected components our algorithm gives the
first running time improvement in 20 years. Additionally we present an -time algorithm for 2-edge strongly connected components, and thus
improve over the running time also when . Our approach
extends to k-edge and k-vertex strongly connected components for any constant k
with a running time of for edges and for vertices
Detecting One-variable Patterns
Given a pattern such that
, where is a
variable and its reversal, and
are strings that contain no variables, we describe an
algorithm that constructs in time a compact representation of all
instances of in an input string of length over a polynomially bounded
integer alphabet, so that one can report those instances in time.Comment: 16 pages (+13 pages of Appendix), 4 figures, accepted to SPIRE 201
Searching of gapped repeats and subrepetitions in a word
A gapped repeat is a factor of the form where and are nonempty
words. The period of the gapped repeat is defined as . The gapped
repeat is maximal if it cannot be extended to the left or to the right by at
least one letter with preserving its period. The gapped repeat is called
-gapped if its period is not greater than . A
-subrepetition is a factor which exponent is less than 2 but is not
less than (the exponent of the factor is the quotient of the length
and the minimal period of the factor). The -subrepetition is maximal if
it cannot be extended to the left or to the right by at least one letter with
preserving its minimal period. We reveal a close relation between maximal
gapped repeats and maximal subrepetitions. Moreover, we show that in a word of
length the number of maximal -gapped repeats is bounded by
and the number of maximal -subrepetitions is bounded by
. Using the obtained upper bounds, we propose algorithms for
finding all maximal -gapped repeats and all maximal
-subrepetitions in a word of length . The algorithm for finding all
maximal -gapped repeats has time complexity for the case
of constant alphabet size and time complexity for the
general case. For finding all maximal -subrepetitions we propose two
algorithms. The first algorithm has time
complexity for the case of constant alphabet size and time complexity for the general case. The
second algorithm has
expected time complexity
Pattern Matching in Multiple Streams
We investigate the problem of deterministic pattern matching in multiple
streams. In this model, one symbol arrives at a time and is associated with one
of s streaming texts. The task at each time step is to report if there is a new
match between a fixed pattern of length m and a newly updated stream. As is
usual in the streaming context, the goal is to use as little space as possible
while still reporting matches quickly. We give almost matching upper and lower
space bounds for three distinct pattern matching problems. For exact matching
we show that the problem can be solved in constant time per arriving symbol and
O(m+s) words of space. For the k-mismatch and k-difference problems we give
O(k) time solutions that require O(m+ks) words of space. In all three cases we
also give space lower bounds which show our methods are optimal up to a single
logarithmic factor. Finally we set out a number of open problems related to
this new model for pattern matching.Comment: 13 pages, 1 figur
Faster Approximate String Matching for Short Patterns
We study the classical approximate string matching problem, that is, given
strings and and an error threshold , find all ending positions of
substrings of whose edit distance to is at most . Let and
have lengths and , respectively. On a standard unit-cost word RAM with
word size we present an algorithm using time When is
short, namely, or this
improves the previously best known time bounds for the problem. The result is
achieved using a novel implementation of the Landau-Vishkin algorithm based on
tabulation and word-level parallelism.Comment: To appear in Theory of Computing System
An Optimal Algorithm for Tiling the Plane with a Translated Polyomino
We give a -time algorithm for determining whether translations of a
polyomino with edges can tile the plane. The algorithm is also a
-time algorithm for enumerating all such tilings that are also regular,
and we prove that at most such tilings exist.Comment: In proceedings of ISAAC 201
Online Detection of Repetitions with Backtracking
In this paper we present two algorithms for the following problem: given a
string and a rational , detect in the online fashion the earliest
occurrence of a repetition of exponent in the string.
1. The first algorithm supports the backtrack operation removing the last
letter of the input string. This solution runs in time and
space, where is the maximal length of a string generated during the
execution of a given sequence of read and backtrack operations.
2. The second algorithm works in time and space,
where is the length of the input string and is the number of
distinct letters. This algorithm is relatively simple and requires much less
memory than the previously known solution with the same working time and space.
a string generated during the execution of a given sequence of read and
backtrack operations.Comment: 12 pages, 5 figures, accepted to CPM 201
Ternary Syndrome Decoding with Large Weight
The Syndrome Decoding problem is at the core of many code-based
cryptosystems. In this paper, we study ternary Syndrome Decoding in large
weight. This problem has been introduced in the Wave signature scheme but has
never been thoroughly studied. We perform an algorithmic study of this problem
which results in an update of the Wave parameters. On a more fundamental level,
we show that ternary Syndrome Decoding with large weight is a really harder
problem than the binary Syndrome Decoding problem, which could have several
applications for the design of code-based cryptosystems
Solving Medium-Density Subset Sum Problems in Expected Polynomial Time: An Enumeration Approach
The subset sum problem (SSP) can be briefly stated as: given a target integer
and a set containing positive integer , find a subset of
summing to . The \textit{density} of an SSP instance is defined by the
ratio of to , where is the logarithm of the largest integer within
. Based on the structural and statistical properties of subset sums, we
present an improved enumeration scheme for SSP, and implement it as a complete
and exact algorithm (EnumPlus). The algorithm always equivalently reduces an
instance to be low-density, and then solve it by enumeration. Through this
approach, we show the possibility to design a sole algorithm that can
efficiently solve arbitrary density instance in a uniform way. Furthermore, our
algorithm has considerable performance advantage over previous algorithms.
Firstly, it extends the density scope, in which SSP can be solved in expected
polynomial time. Specifically, It solves SSP in expected time
when density , while the previously best
density scope is . In addition, the overall
expected time and space requirement in the average case are proven to be
and respectively. Secondly, in the worst case, it
slightly improves the previously best time complexity of exact algorithms for
SSP. Specifically, the worst-case time complexity of our algorithm is proved to
be , while the previously best result is .Comment: 11 pages, 1 figur
- …