Abstract
In this paper linear time sequential and optimal parallel algorithms for testing pattern involvement for all length 4 permutations are described. This is an improvement as the previous best sequential algorithms, for most of these pattern require \(O(n\log n)\) time. Our parallel algorithms can be implemented in \(O(\log n)\) time with \(n/\log n\) processors on the CREW PRAM model, or alternatively in \(O(\log \log \log n)\) time with \(n/\log \log \log n\) processors on a CRCW PRAM PRAM model. Parallel algorithm can also be implemented in constant time with \(n\log ^3 n\) processors on a CRCW PRAM model. The previous best parallel algorithms were available for only some of these patterns and took \(O(\log n)\) time with n processors on the CREW PRAM model.





Similar content being viewed by others
References
Albert MH, Aldred REL, Atkinson MD, Holton DA (2001) Algorithms for pattern involvement in permutations. In: Proceedings ISAAC 2001, Springer Lecture notes computer science, vol. 2223, pp 355–367
Berkman O, Matias Y, Ragde P (1998) Triply-logarithmic parallel upper and lower bounds for minimum and range minima over small domains. J Algorithms 28:197–215
Berkman O, Schieber B, Vishkin U (1993) Optimal doubly logarithmic parallel algorithms based on finding all nearest smaller values. J Algorithms 14:344–370
Bose P, Buss JF, Lubiw A (1998) Pattern matching for permutations. Inf Process Lett 65:277–283
Fredman ML (1975) On Computing the length of longest increasing subsequences. Discret Math 11:29–35
Han Y, Saxena S, Shen X (2010) An efficient parallel algorithm for building the separating tree. J Parallel Distrib Comput 70(6):625–629
Ibarra L (1997) Finding pattern matchings for permutations. Inf Process Lett 61:293–295
Karp R, Ramachandran V (1988) A survey of parallel algorithms for shared-memory machines. Technical Report UCB/CSD 88/408, Computer Science Division (EECS), University of California, Berkeley
Kitaev S, Mansour T (2003) A survey on certain pattern problems. Available at http://www.ru.is/kennarar/sergey/index_files/Papers/survey.ps
Kitaev S (2011) Patterns in permutations and words. Springer, Berlin
Preparata FP, Shamos MI (1985) Computational geometry: an introduction. Springer, Berlin
Saxena S (2009) Dominance made simple. Inf Process Lett 109:419–421
Tamassia R, Vitter JS (1996) Optimal cooperative search in fractional cascaded data structures. Algorithmica 15:154–171
Yugandhar V, Saxena S (2005) Parallel algorithms for separable permutations. Discret Appl Math 146:343–364
Acknowledgements
We thank anonymous referees for careful reading of the manuscript, and their critical comments and suggestions. We believe these suggestions have helped in improving the manuscript.
Author information
Authors and Affiliations
Corresponding author
Additional information
Preliminary version of this paper was published in Y. Han, S. Saxena. Algorithms for testing length four permutations. Proceedings 2013 International Frontiers in Algorithmic Workshop (FAW-AAIM’2013) LNCS 7924, 17–23 and Y. Han, S. Saxena: Parallel Algorithms for Testing Length Four Permutations, International Symposium on Parallel Architectures, Algorithms and Programming (PAAP’2014), 81–86.
Rights and permissions
About this article
Cite this article
Han, Y., Saxena, S. Algorithms for testing occurrences of length 4 patterns in permutations. J Comb Optim 35, 189–208 (2018). https://doi.org/10.1007/s10878-017-0163-8
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10878-017-0163-8