feat(strings): expand from 1 to 32 algorithms with 5 new tracker variants - #33
Merged
Conversation
…ants Add 31 new string algorithms across 6 technique subcategories: - Pattern Matching (5 new): Naive, Rabin-Karp, Boyer-Moore, Z-Algorithm, Hamming Distance - Palindrome (3): Palindrome Check, Valid Palindrome, Longest Palindromic Substring - Character Frequency (3): First Non-Repeating Char, Min Window Substring, Char Freq Sort - Transformation (7): Reverse String/Words, Compression, Run-Length Decoding, atoi, Rotation, LCP - Trie Operations (5): Insert/Search, Prefix Count, Longest Word, Auto-Complete, Aho-Corasick - Edit Distance (8): Levenshtein, Jaro-Winkler, LCS, LCSubstring, LRS, Suffix Array, Wildcard, Regex Infrastructure: 5 new VisualState kinds (string-palindrome, string-frequency, string-transform, string-trie, string-distance), 5 tracker classes, 5 visualizer components. Updated CI shards from 8 to 10 in both ci.yml and deploy.yml. InputEditor switched to GenericIntrospectEditor for strings category.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
string-palindrome,string-frequency,string-transform,string-trie,string-distance) with dedicated tracker classes and visualizer componentsci.ymlanddeploy.ymlNew Algorithms (31)
Pattern Matching (5 new): Naive Pattern Search, Rabin-Karp Search, Boyer-Moore Search, Z-Algorithm, Hamming Distance
Palindrome (3): Palindrome Check, Valid Palindrome, Longest Palindromic Substring
Character Frequency (3): First Non-Repeating Character, Minimum Window Substring, Character Frequency Sort
Transformation (7): Reverse String, Reverse Words, String Compression, Run-Length Decoding, String to Integer (atoi), String Rotation Check, Longest Common Prefix
Trie Operations (5): Trie Insert & Search, Trie Prefix Count, Longest Word in Trie, Auto-Complete with Trie, Aho-Corasick Search
Edit Distance (8): Levenshtein Distance, Jaro-Winkler Similarity, Longest Common Subsequence, Longest Common Substring, Longest Repeated Substring, Suffix Array Construction, Wildcard Matching, Regular Expression Matching
Infrastructure
PalindromeTracker,FrequencyTracker,TransformTracker,TrieTracker,DistanceTrackerPalindromeVisualizer,FrequencyVisualizer,TransformVisualizer,TrieVisualizer,DistanceVisualizerInputEditor.tsxswitched fromKmpSearchInputEditortoGenericIntrospectEditorfor strings categoryVisualizationPanel.tsxupdated with 5 new dispatch casesStepTypevalues added toexecution.tsPer Algorithm (9 files each)
index.ts,step-generator.ts,educational.ts, 3 source files (TS/PY/Java with@step:markers), 2 test files, pipeline storyTest plan
npm run lint— passesnpm run format:check— passesnpm run typecheck— passesnpm test— 738 test files, 7089 tests passnpm run e2e— 691 tests, all pass (32 strings tests)