首页    期刊浏览 2024年09月02日 星期一
登录注册

文章基本信息

  • 标题:Counting Distinct Patterns in Internal Dictionary Matching
  • 本地全文:下载
  • 作者:Panagiotis Charalampopoulos ; Tomasz Kociumaka ; Manal Mohamed
  • 期刊名称:LIPIcs : Leibniz International Proceedings in Informatics
  • 电子版ISSN:1868-8969
  • 出版年度:2020
  • 卷号:161
  • 页码:8:1-8:15
  • DOI:10.4230/LIPIcs.CPM.2020.8
  • 出版社:Schloss Dagstuhl -- Leibniz-Zentrum fuer Informatik
  • 摘要:We consider the problem of preprocessing a text T of length n and a dictionary ð'Y in order to be able to efficiently answer queries CountDistinct(i,j), that is, given i and j return the number of patterns from ð'Y that occur in the fragment T[i..j]. The dictionary is internal in the sense that each pattern in ð'Y is given as a fragment of T. This way, the dictionary takes space proportional to the number of patterns d= ð'Y rather than their total length, which could be Î~(nâ<. d). An ð'ªÌf(n+d)-size data structure that answers CountDistinct(i,j) queries ð'ª(log n)-approximately in ð'ªÌf(1) time was recently proposed in a work that introduced internal dictionary matching [ISAAC 2019]. Here we present an ð'ªÌf(n+d)-size data structure that answers CountDistinct(i,j) queries 2-approximately in ð'ªÌf(1) time. Using range queries, for any m, we give an ð'ªÌf(min(nd/m,n²/m²)+d)-size data structure that answers CountDistinct(i,j) queries exactly in ð'ªÌf(m) time. We also consider the special case when the dictionary consists of all square factors of the string. We design an ð'ª(n log² n)-size data structure that allows us to count distinct squares in a text fragment T[i..j] in ð'ª(log n) time.
  • 关键词:dictionary matching; internal pattern matching; squares
国家哲学社会科学文献中心版权所有