Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
Delphi 7 Enterprise
|
Re: teilweise permutation
12. Feb 2008, 02:30
Hier mal ein Vorschlag...
Delphi-Quellcode:
procedure permutation(mitte:string; Liste:TStrings);
procedure permut(links, mitte, rechts:string);
var i:integer;
temp:string;
begin
if mitte = '' then
Liste.Append(links + rechts)
else
for i:=1 to length(mitte) do begin
temp:=mitte;
delete(temp, i, 1);
permut(links + mitte[i], temp, rechts);
end;
end;
var links, rechts:string;
begin
Liste.Clear;
links:=copy(mitte, 1, 1);
delete(mitte, 1, 1);
rechts:=copy(mitte, length(mitte), 1);
delete(mitte, length(mitte), 1);
permut(links, mitte, rechts);
end;
procedure TForm.ButtonClick(Sender: TObject);
begin
permutation('ABCDEFG', Memo.Lines);
end;
Gruss
Thorsten
|
|
Zitat
|