-
-
Notifications
You must be signed in to change notification settings - Fork 157
Adding solution of Aho-Corasick Algorithm. #3796
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
## Fixing Issue codeharborhub#3771 ## Description This pull request adds the implementation of the Aho-Corasick algorithm in C++ to the DSA folder. The Aho-Corasick algorithm is used for searching multiple patterns simultaneously within a text. It builds a trie of the patterns and uses a failure function to efficiently search for all patterns in O(n + m + z) time complexity, where n is the length of the text, m is the total length of all patterns, and z is the number of pattern occurrences. ## Type of PR - [ ] Bug fix - [x] Feature enhancement - [ ] Documentation update - [ ] Security enhancement - [ ] Other (specify): _______________ ## Checklist - [x] I have performed a self-review of my code. - [x] I have read and followed the Contribution Guidelines. - [x] I have tested the changes thoroughly before submitting this pull request. - [x] I have provided relevant issue numbers, screenshots, and videos after making the changes. - [x] I have commented my code, particularly in hard-to-understand areas. - [x] I have followed the code style guidelines of this project. - [x] I have checked for any existing open issues that my pull request may address. - [x] I have ensured that my changes do not break any existing functionality. - [x] Each contributor is allowed to create a maximum of 4 issues per day. This helps us manage and address issues efficiently. - [x] I have read the resources for guidance listed below. - [x] I have followed security best practices in my code changes. ## Additional Context The Aho-Corasick algorithm implementation includes: - Construction of a trie for multiple pattern strings. - Implementation of the failure function to handle mismatches efficiently. - Efficient search for multiple patterns within a given text. - Clear and well-commented code for easy understanding and maintenance. ## Resources for Guidance Please read the following resources before submitting your contribution: - [x] [Code Harbor Hub Community Features](https://www.codeharborhub.live/community/features) - [x] [Markdown Guide](https://www.markdownguide.org/)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great job, @sjain1909! 🎉 Thank you for submitting your pull request to CodeHarborHub. We appreciate your contribution and enthusiasm! Our team will review it soon. If you have any questions or need further assistance, feel free to reach out. Thanks for contributing!
Here's the code health analysis summary for commits Analysis Summary
|
@ajay-dhangar sir, kindly review and please let me know if any changes required. |
⚡️ Lighthouse Report for the Deploy Preview of this PR 🚀🔗 Site: CodeHarborHub | Live Site
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
Fixing Issue
Fix #3771
Description
This pull request adds the implementation of the Aho-Corasick algorithm in C++ to the DSA folder. The Aho-Corasick algorithm is used for searching multiple patterns simultaneously within a text. It builds a trie of the patterns and uses a failure function to efficiently search for all patterns in O(n + m + z) time complexity, where n is the length of the text, m is the total length of all patterns, and z is the number of pattern occurrences.
Type of PR
Checklist
Additional Context
The Aho-Corasick algorithm implementation includes:
Resources for Guidance
Please read the following resources before submitting your contribution: