Einzelnen Beitrag anzeigen

quendolineDD

Registriert seit: 19. Apr 2007
Ort: Dresden
781 Beiträge
 
Turbo Delphi für Win32
 
#14

Re: EAccessViolation bei Bubblesort

  Alt 9. Okt 2007, 12:45
Tut mir leid, war mein Fehler. Das kannst du wieder wegmachen ;o)

Ich schätze mal deine Bereichsverletzung kommt aus der Zeile.
for i := Low(List) to High(List) - 1 do Mache hier draus mal for i := Low(List) to High(List) - 2 do Wenn du dir das hier mal anschaust
Delphi-Quellcode:
procedure BubbleSort(Items: TStrings);
var
  done: boolean;
  i, n: integer;
  Dummy: string;
begin
  n := Items.Count;

  repeat
    done := true;
    for i := 0 to n - 2 do
      if Items[i] > Items[i + 1] then
      begin
        Dummy := Items[i];
        Items[i] := Items[i + 1];
        Items[i + 1] := Dummy;

        done := false;
      end;
  until done;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  BubbleSort(Listbox1.Items);
end;
http://www.dsdt.info/tipps/?id=368
Hab ich in #12 schon gepostet
Lars S.
Wer nicht mit der Zeit geht, geht mit der Zeit.
  Mit Zitat antworten Zitat