Einzelnen Beitrag anzeigen

TUX_der_Pinguin

Registriert seit: 1. Jun 2005
Ort: Anholt (NRW)
609 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: ShellSort Problem - Array mit 2 Elementen

  Alt 23. Apr 2009, 10:49
Zitat von gammatester:
Scheint mir zumindest ein Bug im Originalquellcode zu sein. Der wird provoziert durch die neumodische Art, arrays meist bei Index 0 anfangen zu lassen. Das erste k soll wohl gleich der halben Anzahl der Elemente sein, also etwa k := (High(Files) - Low(Files) + 1) div 2; Nebenbei: die durch
Delphi-Quellcode:
k := (High(Files) - Low(Files) + 1) div 2;
...
k := k div 2;
erzeugte Schrittweitenfolge ist suboptimal.

Gammatester

Naja nur die halbe Anzahl also "Length(Files) div 2" bringt nichts, den dann tritt ein Fehler auf und das Programm bricht ab,
soweit ist die Routine schon korrekt das sie mit "High(Files) div 2" arbeitet. Vorraussetzung ist Index 0 im Array.

Und ob jetzt die Schrittweitenfolge suboptimal oder nicht ist, ist soweit ja Vernachlässigbar solange der Quellcode generell funktioniert.
  Mit Zitat antworten Zitat