Имеющий Что Сказать
Зарегистрирован: 05 October 2007
Сообщения: 75
Примеры кода: 0
|
Нужна быстрая сортировка |
11 August 2008 12:41 |
|
|
|
|
" Hashtable не очень хорош, поскольку значения элементов (ключи) не известны, а чтобы с IEnumerator-ом добраться до максимальных значений, нужно перебрать весь массив. Вот если бы этот самый нумератор работал в обратном порядке, то проблемы бы не было. Возможно я ошибаюсь - поправьте, плз. "
Если вас не устраивает только порядок сортировки в IEnumerator, то тут все просто.
1 если вам надо записать чисто (1), то вы записываете в hashtable (-1)
2 если вам надо записать чисто (2), то вы записываете в hashtable (-2)
И т.д.
Другими словами умножаете число на -1 и записываете. Соответственно, когда будете получать из hashtable, снова умножаете на -1. Более грамотным аналогом этого будет вычитание часла из максимального значения этого типа. Например в типе Int32 есть свойство Int32.MaxValue. Сохраняйте в hashtable (Int32.MaxValue - ваше_число)
Данное сообщение получено с сайта GotDotNet.RU
Последний раз редактировалось 11 August 2008 12:40
|
|