Я искал в Google (и, конечно, переполнение стека!) Способ сортировки списка целых чисел по значению, но также по дополнительному коэффициенту. Я ищу какой-то алгоритм для реализации, я полагаю. До сих пор у меня в Delphi 2007 есть массив, который сортирует значения от наибольшего к наименьшему, но теперь я бы хотел отсортировать значения, которые на X только больше, чем предыдущее число в списке.
Например, значения 5, 7, 25, 15 в настоящее время отсортированы по 25, 15, 7, 5. Порядок, который я сейчас пытаюсь получить, со значением X, равным 5, равен 25, 15, 5, 7. Как видите, 5 и 7 не поменялись местами, потому что между ними нет разницы больше 5 *.
Не уверен, что я объясняю это особенно хорошо, но это общая идея.
Еще одним примером будут значения 10, 40, 18, 20, 16, 28. Сортировать, они должны быть 40, 28, 18, 20, 16, 10. 18, 20 и 16 не переместились, потому что опять же, между каждым из чисел не более 5
Идея заключается в том, что элемент, связанный с номером (например, количество раз, когда что-то было заказано), не меняется постоянно из-за разницы только в 1 или 2. Например, если Список наиболее часто заказываемой бумаги отображается на веб-странице по частоте приобретения, тогда заказ определенного типа бумаги изменится только для пользователя, если он был заказан более чем в пять раз больше, чем следующий наиболее часто встречающийся.
Надеюсь, что это имеет смысл, и спасибо за ваше время!