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 Bubblesort bei StringListen (https://www.delphipraxis.net/58556-problem-mit-bubblesort-bei-stringlisten.html)

ManuMF 8. Dez 2005 20:06


Problem mit Bubblesort bei StringListen
 
Hallo,

Zuerst: Ich muss BubbleSort verwenden, also bitte keine davon abweichenden Lösungsvorschläge ;-)

Also, ich habe mehrere StringListen, von denen ich alle nach einer sortieren möchte.
Mein Code:
Delphi-Quellcode:
var ZeileA, ZeileB : Cardinal;
    ListeX : TStringList;

begin
  For ZeileA := 0 to (Liste1.Count - 1) do
  begin
    for ZeileB := (ZeileA + 1) to (Liste1.Count -1) do
    begin
      If (Liste1.Strings[ZeileA] > Liste1.Strings[ZeileB]) then
      begin
        Liste1.Exchange(ZeileA, ZeileB);
        Liste2.Exchange(ZeileA, ZeileB);
        Liste3.Exchange(ZeileA, ZeileB);
        Liste4.Exchange(ZeileA, ZeileB);
        Liste5.Exchange(ZeileA, ZeileB);
        Liste6.Exchange(ZeileA, ZeileB);
      end;
    end;
  end;
end;
:arrow: Das Problem: Liste1 ist perfekt sortiert, aber stimmt nicht mehr mit den anderen über ein. :wall:
Delphi-Quellcode:
// Beispiel:

Liste1 Liste2 Liste 3
// Vorher
B     1      456
A     0      123
C     2      789
// Nachher
A     1      456
B     0      123
C     2      756
Woran könnte das liegen?

Danke,
ManuMF

tomsel 8. Dez 2005 20:56

Re: Problem mit Bubblesort bei StringListen
 
ist Sorted bei allen Listen auf false gesetzt?

marabu 8. Dez 2005 21:11

Re: Problem mit Bubblesort bei StringListen
 
Hallo,

der Code ist nicht optimal, aber er funktioniert. Und Sorted muss wohl FALSE sein, da die Inhalte von Liste2 und Liste3 unsortiert sind. Der Fehler steckt irgendwo anders.

Grüße vom marabu

tomsel 8. Dez 2005 21:33

Re: Problem mit Bubblesort bei StringListen
 
ja, die sind unsortiert, hab ich übersehen. Bei dem Codestück fällt mir partout keine Fehlerquelle auf. Vielleicht, wenn Du etwas mehr "Futter" anbietest?

ManuMF 9. Dez 2005 16:04

Re: Problem mit Bubblesort bei StringListen
 
Hallo,

danke erst mal für den Hinweis mit Sorted. Es ist definitiv ausgeschaltet. Ich verändere die Eigenschaft irgendwo anders, hätte also gut sein können, das ich es übersehen hätte. ;-)

Inzwischen habe ich es aber ganz anders realisiert. Die Sortierung erfolgt nun bei der Eingabe, was funktioniert.

Gruß,
ManuMF


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:38 Uhr.

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