сортируйте мой TableViewcell с расстоянием от ответа в swift3

im работает над картой и таблицей. У меня 4 местоположения, и у меня есть расстояние между собой, теперь я хочу, чтобы, когда я нажимаю на любую ячейку, тогда эта ячейка должна появиться на 1-й позиции, а после со всеми остальное место будет.

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { let indexPath = tableView.indexPathForSelectedRow let currentCell = tableView.cellForRow(at: indexPath!)! print(currentCell.textLabel!.text as Any) print(indexPath?.row as Any) print(indexPath as Any) if (indexPath?.row) != 0{ tableView.beginUpdates() self.tableView.moveRow(at: IndexPath(row: (indexPath?.row)!, section: 0), to: IndexPath(row: 0, section: 0)) // self.tableView.moveRow(at: IndexPath(row: 0, section: 0), to: IndexPath(row: (indexPath?.row)!, section: 0)) tableView.endUpdates() tableView.reloadData() } //posts.sort { ($0 as AnyObject).distanceInMeters < $1.distanceInMeters } let lat = "\((self.posts[(indexPath?.row)!] as AnyObject).value(forKey: "location_latitude")!)" let lon = "\((self.posts[(indexPath?.row)!] as AnyObject).value(forKey: "location_longitude")!)" let convertToDouble1 = Double((lat as NSString).doubleValue) let convertToDouble2 = Double((lon as NSString).doubleValue) let location:CLLocationCoordinate2D = CLLocationCoordinate2D(latitude: convertToDouble1, longitude: convertToDouble2) let dropPin = MKPointAnnotation() dropPin.coordinate = location dropPin.title = "\((self.posts[(indexPath?.row)!] as AnyObject).value(forKey: "name")!)" self.map.addAnnotation(dropPin) self.map.showsUserLocation = true self.map.showAnnotations(annotations, animated: true) self.map.selectAnnotation(dropPin, animated: true) } 

введите описание изображения здесь

введите описание изображения здесь

Давайте будем гением компьютера.