101 research outputs found
An Efficient Dynamic Programming Algorithm for the Generalized LCS Problem with Multiple Substring Exclusion Constrains
In this paper, we consider a generalized longest common subsequence problem
with multiple substring exclusion constrains. For the two input sequences
and of lengths and , and a set of constrains
of total length , the problem is to find a common subsequence of and
excluding each of constrain string in as a substring and the length of
is maximized. The problem was declared to be NP-hard\cite{1}, but we
finally found that this is not true. A new dynamic programming solution for
this problem is presented in this paper. The correctness of the new algorithm
is proved. The time complexity of our algorithm is .Comment: arXiv admin note: substantial text overlap with arXiv:1301.718
Faster STR-IC-LCS Computation via RLE
The constrained LCS problem asks one to find a longest common subsequence of two input strings A and B with some constraints. The STR-IC-LCS problem is a variant of the constrained LCS problem, where the solution must include a given constraint string C as a substring. Given two strings A and B of respective lengths M and N, and a constraint string C of length at most min{M, N}, the best known algorithm for the STR-IC-LCS problem, proposed by Deorowicz (Inf. Process. Lett., 11:423-426, 2012), runs in O(MN) time. In this work, we present an O(mN + nM)-time solution to the STR-IC-LCS problem, where m and n denote the sizes of the run-length encodings of A and B, respectively. Since m <= M and n <= N always hold, our algorithm is always as fast as Deorowicz\u27s algorithm, and is faster when input strings are compressible via RLE
Efficient algorithms for enumerating maximal common subsequences of two strings
We propose efficient algorithms for enumerating maximal common subsequences
(MCSs) of two strings. Efficiency of the algorithms are estimated by the
preprocessing-time, space, and delay-time complexities. One algorithm prepares
a cubic-space data structure in cubic time to output each MCS in linear time.
This data structure can be used to search for particular MCSs satisfying some
condition without performing an explicit enumeration. Another prepares a
quadratic-space data structure in quadratic time to output each MCS in linear
time, and the other prepares a linear-space data structure in quadratic time to
output each MCS in linearithmic time.Comment: 23 pages, 5 Postscript figure
Microcomputer
Issued as Reports [nos.1-2] and Final report, Project no. E-21-602 (includes subproject no. A-4431/Schlag
28th Annual Symposium on Combinatorial Pattern Matching : CPM 2017, July 4-6, 2017, Warsaw, Poland
Peer reviewe
Adaptive Database Systems Based On Query Feedback and Cached Results
This dissertation explores the query optimization technique of using cached results and feedback for improving performance of database systems. Cached results and experience obtained by running queries are used to save execution time for follow–up queries, adapt data and system parameters, and improve overall system performance. First, we develop a framework which integrates query optimization and cache management. The optimizer is capable of generating efficient query plans using previous query results cached on the disk. Alternative methods to access and update the caches are considered by the optimizer based on cost estimation. Different cache management strategies are also included in this framework for comparison. Empirical performance study verifies the advantage and practicality of this framework. To help the optimizer in selecting the best plan, we propose a novel approach for providing accurate but cost-effective selectivity estimation. Distribution of attribute values is regressed in real time, using actual query result sizes obtained as feedback, to make accurate selectivity estimation. This method avoids the expensive off-line database access overhead required by the conventional methods and adapts fairly well to updates and query locality. This is verified empirically. To execute a query plan more efficiently, a buffer pool is usually provided for caching data pages in memory to reduce disk accesses. We enhance buffer utilization by devising a buffer allocation scheme for recurring queries using page fault feedback obtained from previous executions. Performance improvement of this scheme is shown by empirical examples and a systematic simulation
- …