Skip to content

My solutions to some of the Bioinformatics practices at Rosalind

Notifications You must be signed in to change notification settings

Ernestnzx/rosalind

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rosalind

Rosalind is a platform for learning bioinformatics through problem solving. This repository contains my solutions to some of the questions that I solved ✨

Why Bioinformatics? 🧬

After learning String Data Structures (such as Suffix Arrays and Suffix Trees) and String Matching Algorithms in Competitive Programming, I found it to be one of the most satisfying yet cursed topic that I've learnt so far. Coincidentally, I stumbled upon a textbook 'Algorithms in Bioinformatics: A Practical Introduction' by a former Professor from the National University of Singapore and thus started a journey down this rabbit hole that I'm thoroughly enjoying.

Current Goals in learning Bioinformatics? 🎯

  • Exploration: I do not have any background in Biology so I'm using this opportunity to pick up the basics while sharpening my algorithmic skills
  • Algorithmic Curiosity: Solving problems is one of the main reason why I love Computer Science, so Bioinformatics is a natural progression into solving real life problems.

Bioinformatics Stronghold

Problem Solved: 63/105

Problem Name Problem ID Solution
Introduction to Alternative Splicing ASPC py
Catalan Numbers and RNA Secondary Structures CAT py
Consensus and Profile CONS py
Comparing Spectra with the Spectral Convolution CONV py
Error Correction in Reads CORR py
Counting Optimal Alignments CTEA py
Constructing a De Bruijn Graph DBRU py
Counting DNA Nucleotides DNA py
Edit Distance EDIT py
Edit Distance Alignment EDTA py
Expected Number of Restriction Sites EVAL py
Rabbits and Recurrence Relations FIB py
Mortal Fibonacci Rabbits FIBD py
Computing GC Content GC py
Global Alignment with Scoring Matrix GLOB py
Overlap Graphs GRPH py
Counting Point Mutations HAMM py
Calculating Expected Offspring IEV py
Counting Phylogenetic Ancestors INOD py
Mendel's First Law IPRB py
Finding Disjoint Motifs in a Gene ITWV py
k-Mer Composition KMER py
Speeding Up Motif Finding KMP py
Finding a Shared Motif LCSM py
Finding a Shared Spliced Motif LCSQ py
Enumerating k-mers Lexicographically LEXF py
Ordering Strings of Varying Length Lexicographically LEXV py
Longest Increasing Subsequence LGIS py
Independent Alleles LIA py
Genome Assembly as Shortest Superstring LONG py
Finding the Longest Multiple Repeat LREP py
Maximum Matchings and RNA Secondary Structures MMCH py
Finding a Protein Motif MPRT py
Inferring mRNA from Protein MRNA py
Newick Format with Edge Weights NKEW py
Distances in Trees NWCK py
Open Reading Frames ORF py
Genome Assembly with Perfect Coverage PCOV py
Creating a Distance Matrix PDST py
Enumerating Gene Orders PERM py
Perfect Matchings and RNA Secondary Structures PMCH py
Partial Permutations PPER py
Introduction to Random Strings PROB py
Translating RNA into Protein PROT py
Matching a Spectrum to a Protein PRSM py
Calculating Protein Mass PRTM py
Reversal Distance REAR py
Complementing a Strand of DNA REVC py
Locating Restriction Sites REVP py
Transcribing DNA into RNA RNA py
Matching Random Motifs RSTR py
Interleaving Two Motifs SCSP py
Introduction to Set Operations SETO py
Enumerating Oriented Gene Orderings SIGN py
Sorting by Reversals SORT py
Inferring Protein from Spectrum SPEC py
RNA Splicing SPLC py
Finding a Spliced Motif SSEQ py
Counting Subsets SSET py
Finding a Motif in DNA SUBS py
Transitions and Transversions TRAN py
Completing a Tree TREE py
Introduction to Pattern Matching TRIE py

Algorithmic Heights

Problem Solved: 34/34

Problem Name Problem ID Solution
2-Satisfiability 2SAT py
2SUM 2SUM py
3SUM 3SUM py
Bellman-Ford Algorithm BF py
Breadth-First Search BFS py
Binary Search BINS py
Testing Bipartiteness BIP py
Connected Components CC py
Shortest Cycle Through a Given Edge CTE py
Testing Acyclicity DAG py
Double-Degree Array DDEG py
Degree Array DEG py
Dijkstra's Algorithm DIJ py
Fibonacci Numbers FIBO py
General Sink GS py
Hamiltonian Path in DAG HDAG py
Building a Heap HEA py
Heap Sort HS py
Insertion Sort INS py
Counting Inversions INV py
Majority Element MAJ py
Median MED py
Merge Two Sorted Arrays MER py
Merge Sort MS py
Negative Weight Cycle NWC py
2-Way Partition PAR py
3-Way Partition PAR3 py
Partial Sort PS py
Quick Sort QS py
Semi-Connected Graph SC py
Strongly Connected Components SCC py
Shortest Paths in DAG SDAG py
Square in a Graph SQ py
Topological Sorting TS py

Python Village

Problem Solved: 6/6

Problem Name Problem ID Solution
Installing Python INI1 py
Variables and Some Arithmetic INI2 py
Strings and Lists INI3 py
Conditions and Loops INI4 py
Working with Files INI5 py
Dictionaries INI6 py

About

My solutions to some of the Bioinformatics practices at Rosalind

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages