Faster and simpler algorithms for finding large patterns in permutations

02/23/2019
by   László Kozma, et al.
0

Permutation patterns and pattern avoidance have been intensively studied in combinatorics and computer science, going back at least to the seminal work of Knuth on stack-sorting (1968). Perhaps the most natural algorithmic question in this area is deciding whether a given permutation of length n contains a given pattern of length k. In this work we give two new algorithms for this well-studied problem, one whose running time is n^0.44k+o(k), and one whose running time is the better of O(1.415^n) and n^k/2+o(k). These results improve the earlier best bounds of Ahal and Rabinovich (2000), and Bruner and Lackner (2012), and are the fastest algorithms for the problem when k = Ω( n). When k = o( n), the parameterized algorithm of Guillemot and Marx (2013) dominates. Our second algorithm uses polynomial space and is significantly simpler than all previous approaches with comparable running times, including an n^k/2+o(k) algorithm proposed by Guillemot and Marx. Our approach can be summarized as follows: "for every matching of the even-valued entries of the pattern, try to match all odd-valued entries left-to-right". For the special case of patterns that are Jordan-permutations, we show an improved, subexponential running time.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/13/2019

Finding and counting permutations via CSPs

Permutation patterns and pattern avoidance have been intensively studied...
research
12/19/2022

Lower bound on the running time of Pop-Stack Sorting on a random permutation

Pop-Stack Sorting is an algorithm that takes a permutation as an input a...
research
02/23/2019

Slightly Superexponential Parameterized Problems

A central problem in parameterized algorithms is to obtain algorithms ...
research
07/23/2020

The Asymmetric Travelling Salesman Problem in Sparse Digraphs

Asymmetric Travelling Salesman Problem (ATSP) and its special case Direc...
research
02/18/2018

Capacitated Dynamic Programming: Faster Knapsack and Graph Algorithms

One of the most fundamental problems in Theoretical Computer Science is ...
research
04/03/2020

Catalan and Schröder permutations sortable by two restricted stacks

We investigate the permutation sorting problem with two restricted stack...
research
07/13/2016

Deleting and Testing Forbidden Patterns in Multi-Dimensional Arrays

Understanding the local behaviour of structured multi-dimensional data i...

Please sign up or login with your details

Forgot password? Click here to reset