-
-
Notifications
You must be signed in to change notification settings - Fork 7.7k
feat: add Smith-Waterman algorithm for local sequence alignment #3070
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
base: master
Are you sure you want to change the base?
feat: add Smith-Waterman algorithm for local sequence alignment #3070
Conversation
|
This pull request has been automatically marked as abandoned because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
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.
Pull request overview
This PR introduces a Smith-Waterman algorithm implementation for local sequence alignment in bioinformatics applications. The implementation uses dynamic programming to find optimal local alignments between two sequences with configurable scoring parameters.
Key changes:
- Adds a complete Smith-Waterman algorithm with matrix scoring and traceback functionality
- Includes 8 test cases covering various scenarios including edge cases
- Provides comprehensive Doxygen documentation following project standards
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
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.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated 5 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <[email protected]>
|
@poyea, revisions completed. |
|
@realstealthninja, this is ready to be merged. |
Description
This PR adds the Smith-Waterman algorithm implementation to the dynamic_programming directory.
Algorithm Overview
The Smith-Waterman algorithm is a dynamic programming algorithm for determining similar regions between two sequences (nucleotide or protein sequences). It performs local sequence alignment and is particularly useful in bioinformatics.
Key Features:
Implementation Details:
score_function: Calculates alignment scores for character pairssmith_waterman: Builds the scoring matrix using dynamic programmingtraceback: Reconstructs the optimal alignment from the scoring matrixCode Quality
The implementation follows TheAlgorithms/C-Plus-Plus standards:
Testing
The implementation includes 8 comprehensive test cases:
All tests pass:
Documentation
Checklist
References