Сортировка

Тема в разделе "Delphi - FAQ", создана пользователем daiv, 28 июл 2004.

Статус темы:
Закрыта.
  1. daiv

    daiv Гость

    помогите убрать из списка одинаковые строки
    12
    45
    65
    345
    534
    23
    345
    65
    90
    67
    чтоб выводил
    12
    45
    65
    345
    534
    23
    90
    67
     
  2. SteelRat

    SteelRat Гость

    Воспользуйся такой процедурой:

    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;
     
  3. daiv

    daiv Гость

    Большое спасибо
     
  4. Pete

    Pete Гость

    Через хэш можно быстрее сделать, если список будет достаточно большой, это может дать хороший выигрыш.
     
  5. Pete

    Pete Гость

    Или предварительно отсортировав строки быстрой сортировкой. Когда строк несколько тысяч, эффект будет очень заметен.
     
  6. Barmutik

    Barmutik Гость

    Для такого вопроса нельзя предлагать использовать хэш .. или надо тогда сначала объяснять что такое хэш и быстрая сортировка :angry:
     
  7. Danemon

    Danemon Гость

    Можно воспользоваться услугами типа Set - "множество".
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей