Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.29;
Скачать: CL | DM;

Вниз

Какая строка чаще всего встречается в Tstringlist?   Найти похожие ветки 

 
Kostyan   (2006-01-08 18:36) [0]

Возникла такая проблемка - нужна функция , возвращаяющая строку, которая наиболее часто встречается в TStringList...
Можете помочь?


 
Desdechado ©   (2006-01-08 18:38) [1]

stringlist.sorted:=true
перебор строк с подсчетом


 
TUser ©   (2006-01-08 21:21) [2]

за линейное время реашется. Просматрива5шь список, хранишь наибольшее сейчас и наибольшее ваабще. Протрезвею - напишу.


 
Kostyan   (2006-01-08 22:50) [3]

ок жду =)


 
Alexander PAnov ©   (2006-01-08 23:07) [4]

procedure TForm1.Button1Click(Sender: TObject);
var
   L,L1: TStringList;
   i: Integer;
   Res: Integer;
begin
   L := TStringList.Create;
   L1 := TStringList.Create;
   try
       L.Assign(Memo1.Lines);
       L.Sorted := True;
       L1.Sorted := True;
       L1.Duplicates := dupIgnore;
       for i := 0 to L.Count-1 do
       begin
           Res := L1.Add(L[i]);
           L1.Objects[Res] := Pointer(Integer(L1.Objects[Res])+1);
       end;
       Memo1.Lines.Clear;
       for i := 0 to L1.Count-1 do
       begin
         Memo1.Lines.Add("Count:"+IntToStr(Integer(L1.Objects[i]))+ ", строка:"+L1[i]);
       end;
   finally
       L.Free;
       L1.Free;
   end;
end;


 
Kostyan   (2006-01-08 23:25) [5]

Alexander PAnov Респект! Спасибо


 
TUser ©   (2006-01-09 11:38) [6]

Извини, в [2] фигню написал про линейное время.
List.Sort;
result:="null string";
count:=0;
current:=result;
c_count:=0;
for i:=0 to List.Count do begin
if i < List.Count then
given:=List[i]
else given:="null string";
if current=given then begin
inc (c_count);
end else begin
if c_count > count then begin
result:=current;
count:=c_count;
end;
current:=given;
c_count:=1;
end;
end;



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

Текущий архив: 2006.01.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.049 c
2-1137146343
parasolka
2006-01-13 12:59
2006.01.29
Помогите с сервисом


2-1136979007
NorthMan
2006-01-11 14:30
2006.01.29
Еще раз про сервер и массив...


15-1136518805
Nic
2006-01-06 06:40
2006.01.29
Экзамен по вычислительным машинам, сетям и системам телекоммуника


6-1129051977
Ultra Crash
2005-10-11 21:32
2006.01.29
Интеллектуальные агенты


15-1134847610
lookin
2005-12-17 22:26
2006.01.29
Очепятки в серьезных изданиях...