added cache and big O writeup