algorithm review and study