Rosalind — Bioinformatics Textbook Track

The Bioinformatics Textbook Track, all 124 problems, from pattern finding through assembly graphs to alignment. See the problem list.

124 problems — 124 solved, 0 partial. 124 carry assertions that run on every commit; 0 need a network connection and are checked separately.

Problem statements © rosalind.info — paraphrased, not reproduced. Titles, published sample datasets and expected answers are reproduced only as far as verification needs them. Every problem links to its rosalind.info page.

The solutions themselves are not published here. Rosalind asks that solutions not be posted outside their site, and this page cites Rosalind as an independent check on BioLang, so it reports what was verified rather than showing the code. Every problem below links to its own page on rosalind.info.

Sections

Or read every problem on a single page — heavier to load, but one place to scroll, search and print.

Every problem

Problem Title Status Section Checked
BA1A Compute the Number of Times a Pattern Appears in a Text solved Strings verified by bl test
BA1B Find the Most Frequent Words in a String solved Strings verified by bl test
BA1C Find the Reverse Complement of a String solved Sequence verified by bl test
BA1D Find All Occurrences of a Pattern in a String solved Strings verified by bl test
BA1G Compute the Hamming Distance Between Two Strings solved Sequence verified by bl test
BA3A Generate the k-mer Composition of a String solved Kmers verified by bl test
BA4A Translate an RNA String into an Amino Acid String solved Translation verified by bl test
BA5G Compute the Edit Distance Between Two Strings solved Alignment verified by bl test
BA9G Construct the Suffix Array of a String solved Strings verified by bl test
BA1E Find Patterns Forming Clumps in a String solved Strings verified by bl test
BA1F Find a Position in a Genome Minimizing the Skew solved Genomics verified by bl test
BA1H Find All Approximate Occurrences of a Pattern solved Strings verified by bl test
BA1I Most Frequent Words with Mismatches solved Strings verified by bl test
BA1J Frequent Words with Mismatches and Reverse Complements solved Strings verified by bl test
BA1K Generate the Frequency Array of a String solved Kmers verified by bl test
BA1L Implement PatternToNumber solved Kmers verified by bl test
BA1M Implement NumberToPattern solved Kmers verified by bl test
BA1N Generate the d-Neighborhood of a String solved Strings verified by bl test
BA2A Implement MotifEnumeration solved Strings verified by bl test
BA2B Find a Median String solved Strings verified by bl test
BA2C Find a Profile-most Probable k-mer solved Motifs verified by bl test
BA2H Implement DistanceBetweenPatternAndStrings solved Strings verified by bl test
BA3B Reconstruct a String from its Genome Path solved Assembly verified by bl test
BA3C Construct the Overlap Graph of a Collection of k-mers solved Assembly verified by bl test
BA3D Construct the De Bruijn Graph of a String solved Assembly verified by bl test
BA3E Construct the De Bruijn Graph of a Collection of k-mers solved Assembly verified by bl test
BA5A Find the Minimum Number of Coins Needed to Make Change solved Dynamic programming verified by bl test
BA5C Find a Longest Common Subsequence of Two Strings solved Dynamic programming verified by bl test
BA5E Find a Highest-Scoring Alignment of Two Strings solved Alignment verified by bl test
BA5F Find a Highest-Scoring Local Alignment of Two Strings solved Alignment verified by bl test
BA5H Find a Highest-Scoring Fitting Alignment of Two Strings solved Alignment verified by bl test
BA5I Find a Highest-Scoring Overlap Alignment of Two Strings solved Alignment verified by bl test
BA5J Align Two Strings Using Affine Gap Penalties solved Alignment verified by bl test
BA8A Implement FarthestFirstTraversal solved Clustering verified by bl test
BA8B Compute the Squared Error Distortion solved Clustering verified by bl test
BA8C Implement the Lloyd Algorithm for k-Means Clustering solved Clustering verified by bl test
BA9D Find the Longest Repeat in a String solved Strings verified by bl test
BA9E Find the Longest Substring Shared by Two Strings solved Strings verified by bl test
BA9I Construct the Burrows-Wheeler Transform of a String solved Strings verified by bl test
BA9J Reconstruct a String from its Burrows-Wheeler Transform solved Strings verified by bl test
BA10A Compute the Probability of a Hidden Path solved Hmm verified by bl test
BA10B Compute the Probability of an Outcome Given a Hidden Path solved Hmm verified by bl test
BA10C Implement the Viterbi Algorithm solved Hmm verified by bl test
BA10D Compute the Probability of a String Emitted by an HMM solved Hmm verified by bl test
BA10J Solve the Soft Decoding Problem solved Hmm verified by bl test
BA10H Estimate the Parameters of an HMM solved Hmm verified by bl test
BA10I Implement Viterbi Learning solved Hmm verified by bl test
BA10K Implement Baum-Welch Learning solved Hmm verified by bl test
BA10E Construct a Profile HMM solved Hmm verified by bl test
BA10F Construct a Profile HMM with Pseudocounts solved Hmm verified by bl test
BA10G Perform a Multiple Sequence Alignment with a Profile HMM solved Hmm verified by bl test
BA2D Implement GreedyMotifSearch solved Motifs verified by bl test
BA2E Implement GreedyMotifSearch with Pseudocounts solved Motifs verified by bl test
BA2F Implement RandomizedMotifSearch solved Motifs verified by bl test
BA2G Implement GibbsSampler solved Motifs verified by bl test
BA3F Find an Eulerian Cycle in a Graph solved Graphs verified by bl test
BA3G Find an Eulerian Path in a Graph solved Graphs verified by bl test
BA3H Reconstruct a String from its k-mer Composition solved Assembly verified by bl test
BA3I Find a k-Universal Circular String solved Assembly verified by bl test
BA3J Reconstruct a String from its Paired Composition solved Assembly verified by bl test
BA4B Find Substrings of a Genome Encoding a Given Amino Acid String solved Translation verified by bl test
BA4C Generate the Theoretical Spectrum of a Cyclic Peptide solved Mass spectrometry verified by bl test
BA4D Compute the Number of Peptides of Given Total Mass solved Mass spectrometry verified by bl test
BA4E Find a Cyclic Peptide with Theoretical Spectrum Matching an Ideal Spectrum solved Mass spectrometry verified by bl test
BA4F Compute the Score of a Cyclic Peptide Against a Spectrum solved Mass spectrometry verified by bl test
BA4G Implement LeaderboardCyclopeptideSequencing solved Mass spectrometry verified by bl test
BA4H Generate the Convolution of a Spectrum solved Mass spectrometry verified by bl test
BA4I Implement ConvolutionCyclopeptideSequencing solved Mass spectrometry verified by bl test
BA4J Generate the Theoretical Spectrum of a Linear Peptide solved Mass spectrometry verified by bl test
BA4K Compute the Score of a Linear Peptide Against a Spectrum solved Mass spectrometry verified by bl test
BA4L Trim a Peptide Leaderboard solved Mass spectrometry verified by bl test
BA4M Solve the Turnpike Problem solved Mass spectrometry verified by bl test
BA5B Find the Length of a Longest Path in a Manhattan-like Grid solved Dynamic programming verified by bl test
BA5D Find the Longest Path in a DAG solved Dynamic programming verified by bl test
BA5K Find a Middle Edge in an Alignment Graph in Linear Space solved Alignment verified by bl test
BA5L Align Two Strings Using Linear Space solved Alignment verified by bl test
BA5M Find a Highest-Scoring Multiple Sequence Alignment solved Alignment verified by bl test
BA5N Find a Topological Ordering of a DAG solved Graphs verified by bl test
BA8D Implement the Soft k-Means Clustering Algorithm solved Clustering verified by bl test
BA8E Implement Hierarchical Clustering solved Clustering verified by bl test
BA7A Compute Distances Between Leaves solved Phylogeny verified by bl test
BA7B Compute Limb Length solved Phylogeny verified by bl test
BA7C Implement AdditivePhylogeny solved Phylogeny verified by bl test
BA7D Implement UPGMA solved Phylogeny verified by bl test
BA7E Implement the Neighbor Joining Algorithm solved Phylogeny verified by bl test
BA7F Implement SmallParsimony solved Phylogeny verified by bl test
BA7G Adapt SmallParsimony to Unrooted Trees solved Phylogeny verified by bl test
BA9A Construct a Trie from a Collection of Patterns solved Strings verified by bl test
BA9B Implement TrieMatching solved Strings verified by bl test
BA9H Pattern Matching with the Suffix Array solved Strings verified by bl test
BA9K Generate the Last-to-First Mapping of a String solved Strings verified by bl test
BA9L Implement BWMatching solved Strings verified by bl test
BA9M Implement BetterBWMatching solved Strings verified by bl test
BA9Q Construct the Partial Suffix Array of a String solved Strings verified by bl test
BA9C Construct the Suffix Tree of a String solved Strings verified by bl test
BA9F Find the Shortest Non-Shared Substring of Two Strings solved Strings verified by bl test
BA9N Find All Occurrences of a Collection of Patterns in a String solved Strings verified by bl test
BA9O Find All Approximate Occurrences of a Collection of Patterns in a String solved Strings verified by bl test
BA9P Implement TreeColoring solved Strings verified by bl test
BA6A Implement GreedySorting to Sort a Permutation by Reversals solved Rearrangements verified by bl test
BA6B Compute the Number of Breakpoints in a Permutation solved Rearrangements verified by bl test
BA6C Compute the 2-Break Distance Between a Pair of Genomes solved Rearrangements verified by bl test
BA6D Find a Shortest Transformation of One Genome into Another by 2-Breaks solved Rearrangements verified by bl test
BA6E Find All Shared k-mers of a Pair of Strings solved Rearrangements verified by bl test
BA6F Implement ChromosomeToCycle solved Rearrangements verified by bl test
BA6G Implement CycleToChromosome solved Rearrangements verified by bl test
BA6H Implement ColoredEdges solved Rearrangements verified by bl test
BA6I Implement GraphToGenome solved Rearrangements verified by bl test
BA6J Implement 2-BreakOnGenomeGraph solved Rearrangements verified by bl test
BA6K Implement 2-BreakOnGenome solved Rearrangements verified by bl test
BA11A Construct the Graph of a Spectrum solved Mass spectrometry verified by bl test
BA11B Implement DecodingIdealSpectrum solved Mass spectrometry verified by bl test
BA11C Convert a Peptide into a Peptide Vector solved Mass spectrometry verified by bl test
BA11D Convert a Peptide Vector into a Peptide solved Mass spectrometry verified by bl test
BA11E Sequence a Peptide solved Mass spectrometry verified by bl test
BA11F Find a Highest-Scoring Peptide in a Proteome against a Spectrum solved Mass spectrometry verified by bl test
BA11G Implement PSMSearch solved Mass spectrometry verified by bl test
BA11H Compute the Size of a Spectral Dictionary solved Mass spectrometry verified by bl test
BA11I Compute the Probability of a Spectral Dictionary solved Mass spectrometry verified by bl test
BA11J Find a Highest-Scoring Modified Peptide against a Spectrum solved Mass spectrometry verified by bl test
BA3K Generate Contigs from a Collection of Reads solved Assembly verified by bl test
BA3L Construct a String Spelled by a Gapped Genome Path solved Assembly verified by bl test
BA3M Generate All Maximal Non-Branching Paths in a Graph solved Graphs verified by bl test
BA9R Construct a Suffix Tree from a Suffix Array solved Strings verified by bl test