74 research outputs found
Combinatorics of patience sorting piles
Despite having been introduced in 1962 by C.L. Mallows, the combinatorial
algorithm Patience Sorting is only now beginning to receive significant
attention due to such recent deep results as the Baik-Deift-Johansson Theorem
that connect it to fields including Probabilistic Combinatorics and Random
Matrix Theory.
The aim of this work is to develop some of the more basic combinatorics of
the Patience Sorting Algorithm. In particular, we exploit the similarities
between Patience Sorting and the Schensted Insertion Algorithm in order to do
things that include defining an analog of the Knuth relations and extending
Patience Sorting to a bijection between permutations and certain pairs of set
partitions. As an application of these constructions we characterize and
enumerate the set S_n(3-\bar{1}-42) of permutations that avoid the generalized
permutation pattern 2-31 unless it is part of the generalized pattern 3-1-42.Comment: 19 pages, LaTeX; uses pstricks; view PS, not DVI; use dvips + ps2pdf,
not dvi2pdf; part of FPSAC'05 proceedings; v3: final journal version, revised
Section 3.
Patience Sorting and Its Generalizations
This dissertation collects together results on Patience Sorting and its
generalizations. It incorporates the results of math.CO/0506358,
math.CO/0507031, and math.CO/0512122, as well as previously unpublished
results.Comment: Ph.D. dissertation, 108 pages; uses packages pstricks and youngta
Space-Efficient Algorithms for Longest Increasing Subsequence
Given a sequence of integers, we want to find a longest increasing subsequence of the sequence. It is known that this problem can be solved in O(n log n) time and space. Our goal in this paper is to reduce the space consumption while keeping the time complexity small. For sqrt(n) <= s <= n, we present algorithms that use O(s log n) bits and O(1/s n^2 log n) time for computing the length of a longest increasing subsequence, and O(1/s n^2 log^2 n) time for finding an actual subsequence. We also show that the time complexity of our algorithms is optimal up to polylogarithmic factors in the framework of sequential access algorithms with the prescribed amount of space
Longest Increasing Subsequence under Persistent Comparison Errors
We study the problem of computing a longest increasing subsequence in a
sequence of distinct elements in the presence of persistent comparison
errors. In this model, every comparison between two elements can return the
wrong result with some fixed (small) probability , and comparisons cannot
be repeated. Computing the longest increasing subsequence exactly is impossible
in this model, therefore, the objective is to identify a subsequence that (i)
is indeed increasing and (ii) has a length that approximates the length of the
longest increasing subsequence.
We present asymptotically tight upper and lower bounds on both the
approximation factor and the running time. In particular, we present an
algorithm that computes an -approximation in time , with
high probability. This approximation relies on the fact that that we can
approximately sort elements in time such that the maximum
dislocation of an element is at most . For the lower bounds, we
prove that (i) there is a set of sequences, such that on a sequence picked
randomly from this set every algorithm must return an -approximation with high probability, and (ii) any -approximation
algorithm for longest increasing subsequence requires
comparisons, even in the absence of errors
A Cover-Merging-Based Algorithm for the Longest Increasing Subsequence in a Sliding Window Problem
A longest increasing subsequence problem (LIS) is a well-known combinatorial problem with applications mainly in bioinformatics, where it is used in various projects on DNA sequences. Recently, a number of generalisations of this problem were proposed. One of them is to find an LIS among all fixed-size windows of the input sequence (LISW). We propose an algorithm for the LISW problem based on cover representation of the sequence that outperforms the existing methods for some class of the input sequences
Fast and Longest Rollercoasters
For k >= 3, a k-rollercoaster is a sequence of numbers whose every maximal contiguous subsequence, that is increasing or decreasing, has length at least k; 3-rollercoasters are called simply rollercoasters. Given a sequence of distinct real numbers, we are interested in computing its maximum-length (not necessarily contiguous) subsequence that is a k-rollercoaster. Biedl et al. (2018) have shown that each sequence of n distinct real numbers contains a rollercoaster of length at least ceil[n/2] for n>7, and that a longest rollercoaster contained in such a sequence can be computed in O(n log n)-time (or faster, in O(n log log n) time, when the input sequence is a permutation of {1,...,n}). They have also shown that every sequence of n >=slant (k-1)^2+1 distinct real numbers contains a k-rollercoaster of length at least n/(2(k-1)) - 3k/2, and gave an O(nk log n)-time (respectively, O(n k log log n)-time) algorithm computing a longest k-rollercoaster in a sequence of length n (respectively, a permutation of {1,...,n}).
In this paper, we give an O(nk^2)-time algorithm computing the length of a longest k-rollercoaster contained in a sequence of n distinct real numbers; hence, for constant k, our algorithm computes the length of a longest k-rollercoaster in optimal linear time. The algorithm can be easily adapted to output the respective k-rollercoaster. In particular, this improves the results of Biedl et al. (2018), by showing that a longest rollercoaster can be computed in optimal linear time. We also present an algorithm computing the length of a longest k-rollercoaster in O(n log^2 n)-time, that is, subquadratic even for large values of k <= n. Again, the rollercoaster can be easily retrieved. Finally, we show an Omega(n log k) lower bound for the number of comparisons in any comparison-based algorithm computing the length of a longest k-rollercoaster
- …