added coursera algo 1