Sliding Suffix Tree using LCA
Andrej Brodnik, Matev\v{z} Jekovec

TL;DR
This paper introduces an efficient data structure combining suffix trees, link trees, and LCA to perform real-time substring matching on a sliding window over a character stream, with optimal query and update times.
Contribution
It presents a novel indexed sliding window data structure that supports deterministic substring matching with optimal query and update performance.
Findings
Data structure size is proportional to window size
Query time is proportional to pattern length plus occurrences
Updates are performed in amortized constant time
Abstract
We consider a sliding window over a stream of characters from some alphabet of constant size. The user wants to perform deterministic substring matching on the current sliding window content and obtain positions of the matches. We present an indexed version of the sliding window using the suffix tree, the link tree and the lowest common ancestor. The data structure of size has optimal time queries and amortized constant time updates, where is the length of the query string and is the number of its occurrences.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAlgorithms and Data Compression · DNA and Biological Computing · Network Packet Processing and Optimization
