Algorithm Theory Course