Вниз
Скачать: CL | DM;

массив из строк: удаление дубликатов   Найти похожие ветки 

 
в   (2003-11-01 14:22) [0]

Нет ли у кого готового алгоритма удаления дубликатов из одномерного массива? Просто писать не хочется.
Ну то есть чтобы эта функция (аргумент: array of string) возвращала готовый массив, где бы дубликатов уже не было, а оставшиеся сообщения располагались в том же порядке, что и были (хотя можно и отсортировать). Само собой, количество элементов в получившемся массиве не больше, чем в исходном.

Спасибо.


 
Song ©   (2003-11-01 14:23) [1]

В TStrings занеси, там есть Duplicates.
В принципе алгоритим один: отсортировываешь строки. Таким образом одинаковые будут стоять рядом. А потом просто проходишь циклом и удаляешь рядом стоящие одинаковые строчки. Одну из них оставляешь.


 
в   (2003-11-01 14:55) [2]

А как с этими Duplicates общаться?


 
SG ©   (2003-11-01 15:01) [3]

for i:=1 to n do
for k:=2 to n do
if A[i]=A[k] then
Begin
A[i]:=0;
A[k]:=0;
end;


 
Maxud ©   (2003-11-01 15:10) [4]


var L: TStringList;
...
// перед добавлением строк
L.Duplicates := dupIgnore;


 
Verg ©   (2003-11-01 15:16) [5]


> Просто писать не хочется.


Можно и бутылки собирать....


 
Palladin ©   (2003-11-02 13:48) [6]


> Verg © (01.11.03 15:16) [5]

:))



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.107 c
1-41365
Элина
2003-10-29 12:01
2003.11.13
DLL и строка


1-41593
HydraMarat
2003-10-27 01:38
2003.11.13
Значение типа из строки


1-41196
Ivolg
2003-11-02 13:12
2003.11.13
Кнопка закрыть


1-41366
alex_***
2003-10-30 12:12
2003.11.13
экспорт объектов из DLL


4-42269
miguel1
2003-09-08 16:45
2003.11.13
Программирование голосовых функций модема при помощи TAPI




   Наверх