Sequence Alignment (Dynamic Programming)

Needleman-Wunsch to find optimal alignment of strings, in this case for genetic instructions (ACTG)

Oct 2025

Finding strongly connected components of a graph (Kosaraju Algorithm)

Github Kosaraju’s algorithm Project 4 for Analysis of Algorithms This algorithm finds strongly connected components in a directed graph. A strongly connected component is a portion of a graph where you can get from any one node to any other node within that portion. The graph is stored like this in a txt file 1 4 2 8 3 6 4 7 And as problem 8.10 describes in https://www.algorithmsilluminated.org/ , the files describe the edges of a directed graph. Vertices are labeled as positive integers from 1 to 875714. Each row indicates one edge of the graph (the tail and head vertices, in that order). For example, the eleventh row (“2 13019”) indicates that there is an edge directed from vertex 2 to vertex 13019. What are the sizes of the biggest five strongly connected components? ...

Oct 2025

Choosing Pivots in Quicksort

Comparing how many comparisons are required in quicksort for various pivot selection methods.

Oct 2025
Karatsuba Algorithm

Karatsuba Algorithm

Multiply numbers in less than O(n^2) time.

Sep 2025
MIPS Code Demo Thumbnail

Bubble Sort and N Fibonacci Numbers in MIPS Assembly

Complex algorithms in MIPS

Oct 2024