Algorithms

A general purpose set of serial algorithms. Includes:

  • String parenthesization: Can a string be parenthesized to result in another string under the rules of some multiplicative paradigm?

  • Edit Distance: How close are two contiguous sequences of characters, numbers, structs, etc. to each other, according to some measure?

  • Longest Common Subsequence: What is the longest common subsequence of two sequences of objects?

  • Matrix Chain Optimization: What is the most efficient way to multiply a sequence of matrices?

  • Binary Search: recursive (bsearch_rec()) and iterative (bsearch_iter()) variants.

  • Quicksort: recursive (qsort_rec()) and iterative (qsort_iter()) variants.

  • Mergesort: recursive (mergesort_rec()) and iterative (mergesort_iter()) variants.

  • Insertion sort: insertion_sort(). Most of the time you want either quicksort or mergesort–this one is much slower.

  • Radix sort: radix_sort().