algorithm questions