Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Problem mit Insertion Sort (https://www.delphipraxis.net/10493-problem-mit-insertion-sort.html)

trialfreak 19. Okt 2003 20:22


Problem mit Insertion Sort
 
Hallo!

Beim Ausprobieren des Insertion-Sort Algorithmus wird bei mir stets der erste Eintrag ignoriert.

Dabei möchte ich direkt in einer Listbox Zahlenwerte sortieren.

Hier der Code:

Delphi-Quellcode:
procedure Tf_main.InsertionSort;
var
  i, j: integer;
  tauscher: string;
begin
  //Elemente aus der unsortieren Listbox in die später sortierte Listbox kopieren
  lb_sort.items.text := lb_sort.items.text;
  //Insertion Sort --> 1. Element wird ignoriert
  for i:=2 to (lb_sort.items.count-1) do
    begin
      tauscher := lb_sort.items[i];
      j := i;
      while strtoint(lb_sort.items[j-1])>strtoint(tauscher) and (j>1) do
        begin
          lb_sort.items[j] := lb_sort.items[j-1];
          j := j-1;
        end;
      lb_sort.items[j] := tauscher;
    end;
end;
Ich denke dass der Fehler in den beiden Zählvariablen liegt, da ja in einer Stringliste das 1. Element bei 0 beginnt.

Wie muss ich den Algorithmus entsprechend umschreiben :?:

Christian


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:26 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz