gimntut: в случае чисел и такого расстояния задача решается обычной сортировкой. Ответ в данном случае будет "1, 2, 8, 10". Разница между соседними элементами будет 1, 6 и 2. Как кажется мне, улучшить данный результат не получится.
AJ: есть лишь функция расстояний, но не сами расстояния. И как пользоваться пузырьком непонятно. Допустим, в процессе сортировки, мы получили, что расстояние между двумя элементами - n. Надо ли их менять местами или нет? Возможно, само слово "сортировка" тут не уместно, но я не знаю как обозвать задачу по другому.
Вообще, задача со строками была лишь примером. Наверное, правильней, было бы задать вопрос так: есть массив элементов некоторого множества и заданна операция расстояния между элементами данного множества. Вопрос - как отсортировать массив так, что бы расстояние между двумя соседними элементами массива было минимальным.