![]() |
Bubblesort....
Hallo! Ich möchte in einer Tabelle jahre und Monate aufsteigend ordnen. Dazu will ich Bubblesort verwenden.
Ich habe jetzt jedoch das Problem, dass die Records(Arrays) nicht getauscht werden, sondern beide mit einmal identisch sind, d.h. alle Werte in der Tabelle sind gleich. Hier ist der Quelltext...könnt ihr mir vll helfen?
Delphi-Quellcode:
THX und mfg
for o:=1 to aa do
begin for k:=1 to aa-o do begin if (Datei[k].Jahr>=Datei[k+1].Jahr) then begin if (Datei[k].Monat>Datei[k+1].Monat) then begin hilf:=Datei[k+1]; Datei[k+1]:=Datei[k]; Datei[k]:=hilf; end; end; end; end; for p:=1 to aa do begin form1.stringgrid1.Cells[0,p]:=IntToStr(Datei[aa].Jahr); form1.stringgrid1.cells[1,p]:=IntToStr(Datei[aa].Monat); end; end; |
Re: Bubblesort....
Delphi-Quellcode:
durch
hilf:=Datei[k+1];
Datei[k+1]:=Datei[k]; Datei[k]:=hilf;
Delphi-Quellcode:
ersetzten
hilf:=Datei[k];
Datei[k]:= Datei[k+1]; Datei[k+1]:=hilf; |
Re: Bubblesort....
Hab ich gemacht...gleiches Ergebnis wie vorher....woran könnte das denn liegenn??? Jmd ne Idee?
|
Re: Bubblesort....
Dreieckstausch ist Dreieckstausch, egal in welche Richtung man tauscht.
|
Re: Bubblesort....
Hallo,
der normale BubbleSort sieht so aus
Delphi-Quellcode:
for i:=1 to aa do
begin for j:=i+1 to aa do begin jetzt i und j vergleichen Heiko |
Re: Bubblesort....
|
Re: Bubblesort....
immernoch das gleiche...hab jetzt den code verändert, aba immernoch sind die werte gleich...
Delphi-Quellcode:
for o:=1 to aa do begin
for k:=1 to aa-o do begin if (Datei[k].Jahr>Datei[k+1].Jahr) {and (Datei[k].Monat>Datei[k-1].Monat)} then begin hilf:=Datei[k]; Datei[k]:= Datei[k+1]; Datei[k+1]:=hilf; end; end; end; for p:=1 to aa do begin form1.stringgrid1.Cells[0,p]:=IntToStr(Datei[aa].Jahr); form1.stringgrid1.cells[1,p]:=IntToStr(Datei[aa].Monat); end; |
Re: Bubblesort....
keiner mehr ne idee?
|
Re: Bubblesort....
Hallo,
wenn du mein Posting nicht willst ...
Delphi-Quellcode:
nicht j:= 1
i:= 1 to max
j:= i+1 to max und nicht aa und aa-o !!! Heiko |
Re: Bubblesort....
so...habs jetzt so gemacht wie du es gesagt hast...aba jetzt sind wieder alle werte 0
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:48 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