Вот ссылка для вопроса, где окончательный код OP может помочь вам понять, как создавать местоположения из координат и как вычислить расстояние между ними.
ЗдесьКак создать местоположение:
CLLocation *location = [[CLLocation alloc] initWithLatitude:latitude longitude:longitude];
А вот как найти расстояние между двумя местоположениями:
CLLocationDistance distance = [locationA distanceFromLocation:locationB]; //CLLocationDistance is a double
Однако вам не нужно сортировать местоположения.Просто прокрутите их и добавьте ближайшие массивы в массив.