Add Longest Common Subsequence (LCS) dynamic programming algorithm [HACKTOBERFEST 2025] #158
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
π Overview
This PR implements the Longest Common Subsequence (LCS) algorithm - a fundamental dynamic programming solution used in bioinformatics, version control, and text analysis.
β¨ Features
π― Why This Matters
LCS algorithm is essential for:
π Implementation Details
π§ Advanced Functions
lcs_string()- Complete solution with path reconstructionlcs_length_optimized()- Space-efficient O(min(m,n)) versionfind_all_lcs()- Finds all possible LCS solutionslcs_array()- Works with integer arrays, not just stringsprint_dp_table()- Educational DP table visualization𧬠Bioinformatics Application
DNA Sequence Analysis: