• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Сортировка

  • Автор темы Автор темы daiv
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
D

daiv

помогите убрать из списка одинаковые строки
12
45
65
345
534
23
345
65
90
67
чтоб выводил
12
45
65
345
534
23
90
67
 
Воспользуйся такой процедурой:

procedure DelDuplicates(SL: TStringList);
var
i, j: integer;
begin
for i := 0 to SL.Count - 1 do
begin
for j := SL.Count - 1 downto i + 1 do
begin
if SL.Strings = SL.Strings[j] then
SL.Delete(j);
end;
end;
end;
 
Через хэш можно быстрее сделать, если список будет достаточно большой, это может дать хороший выигрыш.
 
Или предварительно отсортировав строки быстрой сортировкой. Когда строк несколько тысяч, эффект будет очень заметен.
 
Для такого вопроса нельзя предлагать использовать хэш .. или надо тогда сначала объяснять что такое хэш и быстрая сортировка :angry:
 
Можно воспользоваться услугами типа Set - "множество".
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab