# Posts

## Linear programming explained as skating downhill

Using skating as an analogy to understand linear programming, a broad optimization algorithm.## Internet messaging formats: how computers package and send messages over the internet

A quick summary of internet messaging formats, from IP to HTTP.## Knuth-Morris-Pratt algorithm for O(N) substring search

A brief explanation of the Knuth-Morris-Pratt substring search algorithm.## Ukkonen's algorithm for O(n) suffix tree construction

Understanding Ukkonen's algorithm as lazily yanking out tree branches from a growing tree.## P vs NP from basics

Explaining P vs NP, one of the greatest unsolved problems in math, from absolute basics.