Skip to main content

2019 | OriginalPaper | Buchkapitel

Fast Cartesian Tree Matching

verfasst von : Siwoo Song, Cheol Ryu, Simone Faro, Thierry Lecroq, Kunsoo Park

Erschienen in: String Processing and Information Retrieval

Verlag: Springer International Publishing

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Cartesian tree matching is the problem of finding all substrings of a given text which have the same Cartesian trees as that of a given pattern. So far there is one linear-time solution for Cartesian tree matching, which is based on the KMP algorithm. We improve the running time of the previous solution by introducing new representations. We present the framework of a binary filtration method and an efficient verification technique for Cartesian tree matching. Any exact string matching algorithm can be used as a filtration for Cartesian tree matching on our framework. We also present a SIMD solution for Cartesian tree matching suitable for short patterns. By experiments we show that known string matching algorithms combined on our framework of binary filtration and efficient verification produce algorithms of good performances for Cartesian tree matching.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literatur
1.
Zurück zum Zitat Amir, A., Aumann, Y., Landau, G.M., Lewenstein, M., Lewenstein, N.: Pattern matching with swaps. J. Algorithms 37(2), 247–266 (2000)MathSciNetCrossRef Amir, A., Aumann, Y., Landau, G.M., Lewenstein, M., Lewenstein, N.: Pattern matching with swaps. J. Algorithms 37(2), 247–266 (2000)MathSciNetCrossRef
2.
Zurück zum Zitat Amir, A., Cole, R., Hariharan, R., Lewenstein, M., Porat, E.: Overlap matching. Inf. Comput. 181(1), 57–74 (2003)MathSciNetCrossRef Amir, A., Cole, R., Hariharan, R., Lewenstein, M., Porat, E.: Overlap matching. Inf. Comput. 181(1), 57–74 (2003)MathSciNetCrossRef
3.
Zurück zum Zitat Amir, A., Farach, M., Muthukrishnan, S.: Alphabet dependence in parameterized matching. Inf. Process. Lett. 49(3), 111–115 (1994)CrossRef Amir, A., Farach, M., Muthukrishnan, S.: Alphabet dependence in parameterized matching. Inf. Process. Lett. 49(3), 111–115 (1994)CrossRef
4.
5.
Zurück zum Zitat Baker, B.S.: A theory of parameterized pattern matching: algorithms and applications. In: Proceedings of the Twenty-fifth Annual ACM Symposium on Theory of Computing, pp. 71–80. ACM (1993) Baker, B.S.: A theory of parameterized pattern matching: algorithms and applications. In: Proceedings of the Twenty-fifth Annual ACM Symposium on Theory of Computing, pp. 71–80. ACM (1993)
6.
Zurück zum Zitat Burcsi, P., Cicalese, F., Fici, G., Liptak, Z.: Algorithms for jumbled pattern matching in strings. Int. J. Found. Comput. Sci. 23(2), 357–374 (2012) MathSciNetCrossRef Burcsi, P., Cicalese, F., Fici, G., Liptak, Z.: Algorithms for jumbled pattern matching in strings. Int. J. Found. Comput. Sci. 23(2), 357–374 (2012) MathSciNetCrossRef
7.
Zurück zum Zitat Cantone, D., Faro, S., Kulekci, M.O.: The order-preserving pattern matching problem in practice. Discrete Applied Mathematics (2018, in press) Cantone, D., Faro, S., Kulekci, M.O.: The order-preserving pattern matching problem in practice. Discrete Applied Mathematics (2018, in press)
8.
Zurück zum Zitat Charras, C., Lecroq, T., Pehoushek, J.D.: A very fast string matching algorithm for small alphabets and long patterns. In: Combinatorial Pattern Matching, pp. 55–64 (1998) Charras, C., Lecroq, T., Pehoushek, J.D.: A very fast string matching algorithm for small alphabets and long patterns. In: Combinatorial Pattern Matching, pp. 55–64 (1998)
9.
Zurück zum Zitat Chhabra, T., Kulekci, M.O., Tarhio, J.: Alternative algorithms for order-preserving matching. In: Proceedings of the Prague Stringology Conference 2015, pp. 36–46 (2015) Chhabra, T., Kulekci, M.O., Tarhio, J.: Alternative algorithms for order-preserving matching. In: Proceedings of the Prague Stringology Conference 2015, pp. 36–46 (2015)
10.
Zurück zum Zitat Chhabra, T., Tarhio, J.: A filtration method for order-preserving matching. Inf. Process. Lett. 116(2), 71–74 (2016)MathSciNetCrossRef Chhabra, T., Tarhio, J.: A filtration method for order-preserving matching. Inf. Process. Lett. 116(2), 71–74 (2016)MathSciNetCrossRef
11.
Zurück zum Zitat Cho, S., Na, J.C., Park, K., Sim, J.S.: A fast algorithm for order-preserving pattern matching. Inf. Process. Lett. 115(2), 397–402 (2015)MathSciNetCrossRef Cho, S., Na, J.C., Park, K., Sim, J.S.: A fast algorithm for order-preserving pattern matching. Inf. Process. Lett. 115(2), 397–402 (2015)MathSciNetCrossRef
12.
Zurück zum Zitat Durian, B., Holub, J., Peltola, H., Tarhio, J.: Improving practical exact string matching. Inf. Process. Lett. 110(4), 148–152 (2010)MathSciNetCrossRef Durian, B., Holub, J., Peltola, H., Tarhio, J.: Improving practical exact string matching. Inf. Process. Lett. 110(4), 148–152 (2010)MathSciNetCrossRef
13.
Zurück zum Zitat Faro, S., Lecroq, T., Borzi, S., Mauro, S.D., Maggio, A.: The string matching algorithms research tool. In: Proceedings of the Prague Stringology Conference 2016, pp. 99–113 (2016) Faro, S., Lecroq, T., Borzi, S., Mauro, S.D., Maggio, A.: The string matching algorithms research tool. In: Proceedings of the Prague Stringology Conference 2016, pp. 99–113 (2016)
14.
Zurück zum Zitat Fredriksson, K., Grabowski, S.: Practical and optimal string matching. In: String Processing and Information Retrieval, pp. 376–387 (2005) Fredriksson, K., Grabowski, S.: Practical and optimal string matching. In: String Processing and Information Retrieval, pp. 376–387 (2005)
15.
Zurück zum Zitat Horspool, R.N.: Practical fast searching in strings. Softw. Pract. Experience 10(6), 501–506 (1980)CrossRef Horspool, R.N.: Practical fast searching in strings. Softw. Pract. Experience 10(6), 501–506 (1980)CrossRef
16.
Zurück zum Zitat Intel: Intel (R) 64 and IA-32 Architectures Optimization Reference Manual (2019) Intel: Intel (R) 64 and IA-32 Architectures Optimization Reference Manual (2019)
17.
Zurück zum Zitat Kim, J., Amir, A., Na, J.C., Park, K., Sim, J.S.: On representations of ternary order relations in numeric strings. Math. Comput. Sci. 11(2), 127–136 (2017)MathSciNetCrossRef Kim, J., Amir, A., Na, J.C., Park, K., Sim, J.S.: On representations of ternary order relations in numeric strings. Math. Comput. Sci. 11(2), 127–136 (2017)MathSciNetCrossRef
19.
Zurück zum Zitat Knuth, D.E., Morris Jr., J.H., Pratt, V.R.: Fast pattern matching in strings. SIAM J. Comput. 6(2), 323–350 (1977)MathSciNetCrossRef Knuth, D.E., Morris Jr., J.H., Pratt, V.R.: Fast pattern matching in strings. SIAM J. Comput. 6(2), 323–350 (1977)MathSciNetCrossRef
20.
Zurück zum Zitat Kubica, M., Kulczynski, T., Radoszewski, J., Rytter, W., Walen, T.: A linear time algorithm for consecutive permutation pattern matching. Inf. Process. Lett. 113(12), 430–433 (2013)MathSciNetCrossRef Kubica, M., Kulczynski, T., Radoszewski, J., Rytter, W., Walen, T.: A linear time algorithm for consecutive permutation pattern matching. Inf. Process. Lett. 113(12), 430–433 (2013)MathSciNetCrossRef
22.
Zurück zum Zitat Tarhio, J., Peltola, H.: String matching in the DNA alphabet. Software: Pract. Experience 27(7), 851–861 (1997) Tarhio, J., Peltola, H.: String matching in the DNA alphabet. Software: Pract. Experience 27(7), 851–861 (1997)
Metadaten
Titel
Fast Cartesian Tree Matching
verfasst von
Siwoo Song
Cheol Ryu
Simone Faro
Thierry Lecroq
Kunsoo Park
Copyright-Jahr
2019
DOI
https://doi.org/10.1007/978-3-030-32686-9_9

Neuer Inhalt