Replies: 1 comment
-
|
Hi @Dhruv-mak, the cursor object stores the state of the last extend_right request, meaning that it narrows down the interval over the SA each time the search is extended to the right with a new character and does not search the query text from the beginning. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hello everyone,
I am working on implementing a data compression algorithm and I am using the seqan3 library, specifically the fm_index. You can find my project here: GitHub - Dhruv-mak/rlz.
I have a question regarding the behavior of the
extend_rightmethod on anfm_index_cursor.Code Example
Here's a simplified version of the code I am working with:
Question
When using the extend_right method and providing one character at a time to search for a substring, does the extend_right method:
backward_searchfunction shown in the SeqAn3 FM Index documentation?I want to understand if the
extend_rightmethod optimizes the search by building upon the previous state or if it starts the search from the beginning each time.Additional Context
The reason I am asking this is that I have come across another repository, GitHub - skuruppu/RLZ, which implements a similar compression algorithm but uses a suffix_array instead. I have noticed a significant difference in the running time between the two implementations, with my implementation using
fm_indextaking almost three times longer. I am trying to identify if the difference in running time is due to how the extend_right method operates.Additional Information
I have reviewed the SeqAn3 documentation regarding
fm_indexandextend_right, but I am still unclear on this aspect.Any clarification or guidance would be greatly appreciated.
Thank you for your help!
Beta Was this translation helpful? Give feedback.
All reactions