Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Встроеный алгоритм сортировки массивов / 18 сообщений из 18, страница 1 из 1
28.01.2014, 12:57
    #38540357
3566
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
Добрый день. Интересует вопрос: В С++ содержится файл содержащий функции сортировок - <algorithm> шаблон функции sort.
Существуют ли что-то подобное в Делфях под VCL Win32?
...
Рейтинг: 0 / 0
28.01.2014, 13:09
    #38540380
Dimonka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
Вместо массива, можешь попробовать использовать TList<твой тип данных>, для него можно создавать анонимные шаблонные методы сортировки.
...
Рейтинг: 0 / 0
28.01.2014, 13:13
    #38540389
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
...
Рейтинг: 0 / 0
28.01.2014, 13:18
    #38540399
Dimonka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
Arioch3566,

Существует.
http://docwiki.embarcadero.com/Libraries/XE5/en/System.Generics.Collections.TArray.Sort
О! Спасибо, не знал!
...
Рейтинг: 0 / 0
28.01.2014, 13:23
    #38540413
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
Dimonka,

программист должен быть любопытный, какк кошка :-)

впрочем, это только для legacy

а для нового кода - или тебе нужный полноценный контейнер и тогда сразу пиши на TList, или тебе нужна "дешево и сердито" и тогда нафиг нахлобучки типа сортировки
...
Рейтинг: 0 / 0
28.01.2014, 13:34
    #38540432
й
й
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
для случая, если версия дельфи слишком старая:
алгоритм обменной сортировки массива может быть полностью абстрактным, если будет вызывать 2 определенные пользователем функции - сравнения двух элементов и обмена двух элементов
(в параметрах - индексы, так что всё абстрактно)
естественно, адреса пользовательских функций передаются в процедуру сортировки как параметры
доступ к самому массиву процедуре сортировки не нужен, так что еще в параметрах нужны только мин. и макс. индексы
...
Рейтинг: 0 / 0
28.01.2014, 13:39
    #38540438
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
й,

ну например сортировку слиянием или вставкой на oбмене написать тоже можно, но будет раза в три медленнее
...
Рейтинг: 0 / 0
28.01.2014, 13:40
    #38540442
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
в прочем, для старых версий Дельфи была мода делать псевдо-дженерики на препроцессоре ($Include imterface.inc } и потом {$Include Implementation.inc}
...
Рейтинг: 0 / 0
28.01.2014, 13:42
    #38540450
3566
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
Arioch3566,

Существует.

http://docwiki.embarcadero.com/Libraries/XE5/en/System.Generics.Collections.TArray.Sort

Спасибо за инфу. В help-е просто надо было вбить поиск по -"sort array".
Поиск по "sort" или "qsort" выдавал неадекватный результат.
...
Рейтинг: 0 / 0
28.01.2014, 13:44
    #38540454
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
3566,

ну так мало ли что можно сортировать, в самом деле. Откуда Дельфе-то знать твои мысли ;-)
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
14.08.2020, 14:07
    #39989816
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
22182532
Вопрос по сортировке TStringDynArray
В массиве хранятся три значения - полные пути к файлам.

d:\objects\1724\402136_1.jpg
d:\objects\1724\402136_2.jpg
d:\objects\1724\_mainphoto_402136_3.jpg

Задача простая: сделать последний файл первым.
В Проводнике Винды я вижу, что файл _mainphoto_402136_3.jpg является первым.

Смотрю отладчиком, что до строки

Код: pascal
1.
TArray.Sort<string>(arrFiles);




что после строки - ничего не меняется :(

как отсортировать массив строк TStringDynArray?
...
Рейтинг: 0 / 0
14.08.2020, 14:10
    #39989818
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
ну вот нахрена ты оживляешь столетние топики?!
некрофил хренов.
...
Рейтинг: 0 / 0
14.08.2020, 14:13
    #39989821
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
иногда не вижу смысла создавать новые, если вопрос очень похож
...
Рейтинг: 0 / 0
14.08.2020, 15:00
    #39989847
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
X11
что после строки - ничего не меняется :(
'4' - 52
'_' - 95
X11
В Проводнике Винды я вижу, что файл _mainphoto_402136_3.jpg является первым.
Это его личные трудности.

Хочешь первым - пиши кастомный компарер
...
Рейтинг: 0 / 0
14.08.2020, 15:09
    #39989858
Michael Longneck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
Винда использует для сравнения путей в проводнике

Код: pascal
1.
function StrCmpLogicalW(const psz1: PWideChar; const psz2: PWideChar): Integer; stdcall; external 'Shlwapi.dll' name 'StrCmpLogicalW' delayed;



Используй для сортировки её, будет как в проводнике
...
Рейтинг: 0 / 0
14.08.2020, 15:12
    #39989861
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
Я забыл написать, что приложение (в будущем) может быть кроссплатформенным
...
Рейтинг: 0 / 0
14.08.2020, 15:13
    #39989862
Michael Longneck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
Тогда
_Vasilisk_Хочешь первым - пиши кастомный компарер
...
Рейтинг: 0 / 0
14.08.2020, 15:47
    #39989885
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Встроеный алгоритм сортировки массивов
X11
Я забыл написать, что приложение (в будущем) может быть кроссплатформенным
вот сейчас смешно было, да
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Встроеный алгоритм сортировки массивов / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]