As I can sort two lists or two vectors, ie I sort a list (distances) and according to her order as I ordered another list that keeps me indexes. Thanks.
Pd. I\'m working
List scores = GetScores();
List fruit = GetFruit();
List> sortedPairs = scores
.Zip(fruit, (s, f) => Tuple.Create(s, f))
.OrderBy(x => x.Item1)
.ToList();
scores = sortedPairs.Select(x => x.Item1).ToList();
fruit = sortedPairs.Select(x => x.Item2).ToList();
Now all you have to do is implement Zip, OrderBy, Select, ToList and Tuple.