AlgoGenesis / C

AlgoGenesis is a centralized open-source platform dedicated to providing optimized and well-documented algorithm implementations in C. Perfect for both beginners and advanced users, this repository serves as a comprehensive learning resource for solving algorithmic challenges.
MIT License
89 stars 303 forks source link

[NEW ALGORITHM] I would like to enhance String Algorithms by adding the following new Algorithms i.e., Apostolico–Giancarlo Algorithm, BNDM Algorithm, Bitap Algorithm , Commentz-Walter Algorithm, Shift-Or Algorithm #137

Closed pratheekv39 closed 1 month ago

pratheekv39 commented 1 month ago

Description:

I would like to enhance String Algorithms by adding the following Algorithms:

1)Apostolico–Giancarlo Algorithm Description: An extension of the Boyer-Moore algorithm optimized for multiple pattern matching, allowing efficient backtracking. Time Complexity: O(n + m)

2)BNDM (Backward Nondeterministic Dawg Matching) Description: A bitwise pattern matching algorithm that is an improvement over the BMH algorithm, especially effective for short patterns. Time Complexity: O(nm)

3)Bitap Algorithm (Approximate String Matching) Description: Uses bitwise operations to perform approximate pattern matching, allowing a specified number of errors (insertions, deletions, or substitutions). Time Complexity: O(nm)

4)Commentz-Walter Algorithm Description: A variation of the Boyer-Moore algorithm that improves efficiency when searching for multiple patterns simultaneously. Time Complexity: O(n + m)

5)Shift-Or Algorithm Description: A bitwise algorithm that matches patterns by shifting a bitmask, making it effective for small alphabets. Time Complexity: O(n)

Checklist:

I would love to enhance String Algorithms by adding these algorithms .Please assign me this issue

pankaj-bind commented 1 month ago

@pratheekv39 You are trust worthy contributor.