Efficient algorithms for finding submasses in weighted strings

N. Bansal, M. Cieliebak, Z. Lipták

    Onderzoeksoutput: Hoofdstuk in Boek/Rapport/CongresprocedureConferentiebijdrageAcademicpeer review

    2 Citaten (Scopus)

    Samenvatting

    We study the Submass Finding Problem: Given a string s over a weighted alphabet, i.e., an alphabet S with a weight function µ : S ¿ N, decide for an input mass M whether s has a substring whose weights sum up to M. If M is indeed a submass, then we want to find one or all occurrences of such substrings. We present efficient algorithms for both the decision and the search problem. Furthermore, our approach allows us to compute efficiently the number of different submasses of s. The main idea of our algorithms is to define appropriate polynomials such that we can determine the solution for the Submass Finding Problem from the coefficients of the product of these polynomials. We obtain very efficient running times by using Fast Fourier Transform to compute this product. Our main algorithm for the decision problem runs in time O(µs log µs), where µs is the total mass of string s. Employing standard methods for compressing sparse polynomials, this runtime can be viewed as O(s(s) log2 s(s)), where s(s) denotes the number of different submasses of s. In this case, the runtime is independent of the size of the individual masses of characters.
    Originele taal-2Engels
    TitelCombinatorial Pattern Matching (15th Annual Symposium, CPM 2004, Istanbul,Turkey, July 5-7, 2004. Proceedings)
    RedacteurenS.C. Sahinalp, S. Muthukrishnan, U. Dogrusöz
    Plaats van productieBerlin
    UitgeverijSpringer
    Pagina's194-204
    ISBN van geprinte versie3-540-22341-X
    DOI's
    StatusGepubliceerd - 2004

    Publicatie series

    NaamLecture Notes in Computer Science
    Volume3109
    ISSN van geprinte versie0302-9743

    Vingerafdruk

    Duik in de onderzoeksthema's van 'Efficient algorithms for finding submasses in weighted strings'. Samen vormen ze een unieke vingerafdruk.

    Citeer dit