Commit graph

24 commits

Author SHA1 Message Date
Rodney, Tiara
e5f0d1df58
feat(string): init ChunkedRollingHash 2025-05-06 16:39:44 +02:00
Rodney, Tiara
b29ae6087d
todo(1): hold
I don't have a real use for KMP at the moment. I'm putting it on hold but
leaning towards cancelling the feature completely as I'm not trying to create a
collection of algorithms... My utilities should only contain what I really
need...
2025-05-05 01:36:58 +02:00
Rodney, Tiara
b1ca25bc52
Merge branch 'feature/4' into dev
ID: 4
Type: feature
Title: implement Rabin-Karp rolling hash algorithm
Status: done
Priority: high
Created: 2025-05-05
Description: After testing a couple of string search algorithms, I've ditched
             the idea of using KMP as my use-case gives no advantage compared to
             naive searching. In addition I've came upon the challenge that many
             string search algorithms are optimized for search on a linear
             buffer, which in my case is not applicable as the implementation
             the search algorithm is for uses a circular buffer. Rabin-Karp
             seemed promising. I've come up with a different approach though,
             which is still based on rolling hashes, therefore, as a base, I
             need an implementation of the original Rabin-Karp rolling hash
             algorithm
2025-05-05 01:33:53 +02:00
Rodney, Tiara
e22e43c048
todo(4): done 2025-05-05 01:33:34 +02:00
Rodney, Tiara
e67a95f15a
feat(string): init Rabin-Karp rolling hash
Implemented Rabin-Karp rolling hash class abstraction.

After testing muliple algorithms for efficient substring searching in a stream
abstracted by a ring buffer, I've dropped the idea of using KMP in favor of
implementing my own algorithm based of the Rabin-Karp rolling hash algorithm.
2025-05-05 01:33:22 +02:00
Rodney, Tiara
ab5a86e07d
todo(5): in-progress 2025-05-05 01:31:35 +02:00
Rodney, Tiara
7076768586
todo(5): open 2025-05-05 01:31:17 +02:00
Rodney, Tiara
a8e75c0205
doc(TODO): add additional status for issues
I'd like to be able to track when an issue is not being used, in addition to
when I'm not actively working on issues. Therefore I introduced `cancelled` and
`hold` status.
2025-05-05 01:28:08 +02:00
Rodney, Tiara
c0cfb60f2e
todo(4): in-progress 2025-05-05 01:28:02 +02:00
Rodney, Tiara
358f3a1ea7
todo(4): open 2025-05-05 01:27:44 +02:00
Rodney, Tiara
0ab7a007ae
Merge branch 'feature/2' into dev
ID: 2
Type: feature
Title: implement circular buffer
Status: done
Priority: high
Created: 2025-05-04
Description: implement a simple circular buffer
2025-05-04 02:32:17 +02:00
Rodney, Tiara
12050bc8c4
todo(2): done 2025-05-04 02:32:02 +02:00
Rodney, Tiara
ed4220c1f7
test(collections): init tests for CircularBuffer 2025-05-04 02:30:28 +02:00
Rodney, Tiara
549fea06b1
feat(collections): init circular buffer 2025-05-04 01:42:38 +02:00
Rodney, Tiara
136b5567ce
Merge branch 'bugfix/3' into dev
ID: 3
Type: bugfix
Title: move unit tests to subdirectory
Status: in-progress
Priority: high
Created: 2025-05-04
Description: move the unit test suites to a unit/ subdirectory so that
             integration tests and benchmarks can be cleanly separated
2025-05-04 01:42:06 +02:00
Rodney, Tiara
529a2ac39a
todo(3): done 2025-05-04 01:41:49 +02:00
Rodney, Tiara
bcc65f0a09
refactor(tests): move unit tests to subdirectory
this allows for future separation between unit tests and other test types
2025-05-04 01:38:42 +02:00
Rodney, Tiara
75445348ba
todo(3): in-progress 2025-05-04 01:37:10 +02:00
Rodney, Tiara
8fcd9b9cd8
todo(3): open 2025-05-04 01:36:45 +02:00
Rodney, Tiara
97b91c929d
todo(2): in-progress 2025-05-04 01:33:56 +02:00
Rodney, Tiara
4adca7b948
todo(2): open 2025-05-04 01:33:35 +02:00
Rodney, Tiara
c8164f07a6
to-do(1): in-progress 2025-05-03 22:59:51 +02:00
Rodney, Tiara
d588995c7c
to-do(1): open 2025-05-03 22:57:57 +02:00
Rodney, Tiara
29c7308410
init 2025-05-03 19:28:01 +02:00