Сортировка

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

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

    daiv Гость

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

    SteelRat Гость

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

    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 Гость

    Репутация:
    0
    Большое спасибо
     
  4. Pete

    Pete Гость

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

    Pete Гость

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

    Barmutik Гость

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

    Danemon Гость

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

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