simplistic introduction to algorithmic complexity thinking about computational complexity asymptotic notation some important complexity classes constant complexity logarithmic complexity linear complexity log-linear complexity polynomial complexity exponential complexity comparisons of complexity classes some simple algorithms and data structures search algorithms linear search and using indirection to access elements binary search and exploiting assumptions sorting algorithms merge sort exploiting functions as parameters sorting in python hash tables plotting and more about classes plotting using pylab plotting mortgagesan extended example stochastic programsprobabilityand statistics stochastic programs inferential statistics and simulation distributions normal distributions and confidence levels uniform distributions exponential and geometric distributions benford' distribution how often does the better team win hashing and collisions