Faster and Simpler Online Computation of String Net Frequency

preprint2025arXivOpen access

Abstract

An occurrence of a repeated substring uu in a string SS is called a net occurrence if extending the occurrence to the left or to the right decreases the number of occurrences to 1. The net frequency (NF) of a repeated substring uu in a string SS is the number of net occurrences of uu in SS. Very recently, Guo et al. [SPIRE 2024] proposed an online O(nlog⁡σ)O(n \log σ)-time algorithm that maintains a data structure of O(n)O(n) space which answers Single-NF queries in O(mlog⁡σ+σ2)O(m\log σ+ σ^2) time and reports all answers of the All-NF problem in O(nσ2)O(nσ^2) time. Here, nn is the length of the input string SS, mm is the query pattern length, and σσ is the alphabet size. The σ2σ^2 term is a major drawback of their method since computing string net frequencies is originally motivated for Chinese language processing where σσ can be thousands large. This paper presents an improved online O(nlog⁡σ)O(n \log σ)-time algorithm, which answers Single-NF queries in O(mlog⁡σ)O(m \log σ) time and reports all answers to the All-NF problem in output-optimal O(∣NF+(S)∣)O(|\mathsf{NF}^+(S)|) time, where NF+(S)\mathsf{NF}^+(S) is the set of substrings of SS paired with their positive NF values. We note that ∣NF+(S)∣=O(n)|\mathsf{NF}^+(S)| = O(n) always holds. In contract to Guo et al.'s algorithm that is based on Ukkonen's suffix tree construction, our algorithm is based on Weiner's suffix tree construction.

Explore this paper’s authors, topics and related work.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.

Reviews 0

Write a reviewWrite

No reviews yet.

Discussion 0

Add a commentWrite

No comments yet.