Thema: Delphi Liste sortieren

Einzelnen Beitrag anzeigen

mr.dandy

Registriert seit: 26. Nov 2006
4 Beiträge
 
#1

Liste sortieren

  Alt 26. Nov 2006, 15:57
Hallo,
ich komme nicht mehr weiter
Ich soll eine Liste, die vorher mit Vokabeln gefüttert wurde nach den Anfangsbuchstaben sortiert werden.
Meine Idee:
Delphi-Quellcode:
procedure TForm1.Button7Click(Sender: TObject);
var zactually,zcache: pointer;
    s,t:string;
    sot,finished,fine:boolean;
begin
   edit2.Text:='';
   new(zcache);
   zcache:=nil;
   finished:=false;
   if data_list = nil then edit2.Text:='Die Liste ist leer.'
   else begin
     zactually:=data_list;
     while zactually <> nil do begin
       fine:=true;
       while zcache <> nil do begin
         if ord(zcache.content[1]) <= ord(zactually.content[1]) then begin
            s:=zcache.content;
            zcache.content:=zactually.content;
            sot:=true;
            while zcache <> nil do begin
               if(sot) then begin
                 t:=zcache.next.content;
                 zcache.next.content:=s;
                 sot:=false;
               end
               else begin
                 s:=zcache.next.content;
                 zcache.next.content:=t;
                 sot:=true;
               end;
               zcache:=zcache^.next;
            end;
            finished:=true;
            fine:=false;
            break;
         end;
         if finished then begin
           finished:=false;
           break;
         end;
         zcache:=zcache^.next;
       end;
       if fine then begin
         zcache.content:=zactually.content;
         zcache^.next:=nil;
       end;
       zactually:=zactually^.next;
     end;
     while zcache <> nil do begin
       edit2.Text:=edit2.Text+' ++ '+zcache.content;
       zcache:=zcache^.next;
     end;
     edit2.Text:=edit2.Text+' ++';
   end;
end;
Abeer leider habe ich das mit den Listen noch nicht so ganz raus. Es kommt immer wieder zu Fehlern beim Ablauf

Wo liegen meine Fehler?
  Mit Zitat antworten Zitat