Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.10.12;
Скачать: CL | DM;

Вниз

Универсальный метод для сортировки масивов.   Найти похожие ветки 

 
Q123   (2008-09-01 12:07) [0]

В программе используются массивы из разных типов элементов, а именно
TFloatVector = array of double;
TIntVector = array of integer;

Чтобы их сортировать пришлось писать два идентичных метода, которые отличаются только типом передаваемого им параметра и типом результата.

можно ли как-то обойтись одним методом, который сможет сортировать как TFloatVector так и TIntVector?
Спасибо.


 
Медвежонок Пятачок ©   (2008-09-01 12:09) [1]

Один универсальный метод, перебирающий элементы  с параметром функцией, которая сравнивает элементы.


 
Сергей М. ©   (2008-09-01 12:10) [2]

Можно.
Передавай массив не по значению, а по ссылке.
А вторым параметром специфицируй тип элементов массива.


 
_RusLAN   (2008-09-01 12:34) [3]


> Один универсальный метод, перебирающий элементы  с параметром
> функцией, которая сравнивает элементы.



ну сравнение элементов я сделал через тип variant, то необходимость в параметре-функции отпала. (если я правильно понял для чего нужна эта функция).


> Передавай массив не по значению, а по ссылке.

Объясните, пожалуйста, подробней. Вы имеете ввиду передавать просто указатель (а точнее, как мне описать параметр для массива)?


> А вторым параметром специфицируй тип элементов массива.


Это тоже не очень понял :). Имеется ввиду передавать  какой-то признак integer или double,  а в процедуре сортировки проверять его?


 
www   (2008-09-01 12:37) [4]


> ну сравнение элементов я сделал через тип variant

это долго очень
преобразование и сравнение типов в этом случае займет половину времени сортировки


 
palva ©   (2008-09-01 12:43) [5]

Можно обратиться к стандартной процедуре сортировки qsort, которая находится в C:\WINDOWS\system32\msvcrt.dll


 
Сергей М. ©   (2008-09-01 12:51) [6]

А какой алгоритм сортировки используется ?
И почему именно массив, а не список ?



Страницы: 1 вся ветка

Текущий архив: 2008.10.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.019 c
2-1220616507
zzz
2008-09-05 16:08
2008.10.12
Запрос


15-1219516054
Тын-Дын
2008-08-23 22:27
2008.10.12
Клиентский протокол


2-1220248002
Abcdef123
2008-09-01 09:46
2008.10.12
Работа в среде Дельфи 2007.Что значат ошибки в окне Structure?


15-1219232749
oldman
2008-08-20 15:45
2008.10.12
Ой, как дурят нашего брата...


4-1197466196
OKir
2007-12-12 16:29
2008.10.12
Запрет отключения Num Lock