Стабилизация стандартной библиотеки qsort?

Метод flash на рельсах отображается только при успешном перенаправлении. Если вы хотите показать сообщение на той же странице, было бы лучше показать сообщение с помощью JS.

15
задан alk 20 July 2015 в 16:59
поделиться

1 ответ

Нет, Вы не можете полагаться на это, к сожалению. Давайте предположим, что у Вас есть массив (два поля в каждой записи, используемой для проверки, но только первого поля, используемого для сортировки):

BBBB,1
BBBB,2
AAAA,3

Quicksort может сравнить BBBB, 1 с AAAA, 3 и подкачать их, дав:

AAAA,3
BBBB,2
BBBB,1

Если бы следующий шаг должен был сравнить BBBB, 2 с BBBB, 1, то ключи были бы тем же и, так как BBBB, 2 имеет адрес меньше, чем BBBB, 1, никакая подкачка не произойдет. Для стабильного вида необходимо было закончить с:

AAAA,3
BBBB,1
BBBB,2

Единственный способ сделать это состоял бы в том, чтобы присоединить начальный адрес указателя (не его текущий адрес) и вид с помощью этого, а также других ключей. Тем путем исходный адрес становится незначительной частью ключа сортировки так, чтобы BBBB,1 в конечном счете закончится прежде BBBB,2 независимо от где два BBBB строки идут во время процесса сортировки.

29
ответ дан 1 December 2019 в 01:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: