AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Selection Sort hat Bugs...

Ein Thema von No0oB · begonnen am 6. Sep 2006 · letzter Beitrag vom 7. Sep 2006
 
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: Selection Sort hat Bugs...

  Alt 6. Sep 2006, 20:20
Herzlich willkommen in der Delphi-PRAXiS, NoOoB.

Zusätzlich zum Link von Klaus möchte ich dir noch zwei weitere Links an Herz legen: Daniel hat vor längerer Zeit einmal ein Tutorial verfasst, in dem verschiedene Sortierverfahren beispielhaft implementiert sind - und auch WikiPedia hat umfangreiche Informationen zu diesem Thema.

Zitat von NoOoB:
... bzw. ich meinte SelectionSort zu haben ...
Du hast einen event handler mit deinem Code bestückt. Besser ist es du verpackst deine Sortierverfahren in eine Funktion oder Prozedur. Im event handler OnClick() eines Button ist dein Code nur die Hälfte wert.

Freundliche Grüße vom marabu


PS: In deinem Code werden die Grenzen für die innere und äußere Schleife falsch gesetzt und die Zahl der notwendigen Vertauschungen ist unnötig hoch.

Delphi-Quellcode:
function SelectionSort(var ida: TIntegerDynArray): Integer;
var
  iMin, iOuter, iInner, iTemp, iCount: Integer;
begin
  iCount := 0;
  for iOuter := Low(ida) To Pred(High(ida)) do
  begin
    iMin := iOuter;
    for iInner := Succ(iOuter) to High(ida) Do
      if ida[iInner] < ida[iMin] then
        iMin := iInner;
    if iMin <> iOuter then
    begin
      iTemp := ida[iMin];
      ida[iMin] := ida[iOuter];
      ida[iOuter] := iTemp;
      Inc(iCount);
    end
  end;
  Result := iCount;
end;
Dieser Code ist nur getippt und nicht getestet.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:21 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