Given a text T and a pattern P over alphabet Σ, the classic exact matching problem searches for all occurrences of pattern P in text T. Unlike exact matching problem, order-preserving pattern matching (OPPM) considers the relative order of elements, rather than their real values. In this paper, we propose an efficient algorithm for OPPM problem using the "duel-and-sweep" paradigm. Our algorithm runs in O(n+mlogm) time in general and O(n+m) time under an assumption that the characters in a string can be sorted in linear time with respect to the string size. We also perform experiments and show that our algorithm is faster that KMP-based algorithm. Last, we introduce the two-dimensional order preserved pattern matching and give a duel and sweep algorithm that runs in O(n2) time for duel stage and O(n2m) time for sweeping time with O(m3) preprocessing time.
@article{arxiv.1705.09438,
title = {Duel and sweep algorithm for order-preserving pattern matching},
author = {Davaajav Jargalsaikhan and Diptarama and Ryo Yoshinaka and Ayumi Shinohara},
journal= {arXiv preprint arXiv:1705.09438},
year = {2017}
}