feat: add Smith-Waterman algorithm for local sequence alignment - #3070
AliAlimohammadi wants to merge 4 commits into
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.
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.
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 <175728472+Copilot@users.noreply.github.com>
|
@poyea, revisions completed. |
|
@realstealthninja, this is ready to be merged. |
|
I think we need to think about AI assisted contributions and AI assisted reviewing before this can be merged. An official policy needs to be drafted and discussed, before any commits be entered into the repository. |
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