Startseite
Downloads
Lexikon
Sonstiges
Links
Kontakt
Gästebuch
Statistics
Disclaimer
Name
Syntax
x = SSort() [;]
Beschreibung
Implementierung des Shell-Sort-Algorithmus als interne REXX-Prozedur. Sortiert wird die Stem-Variable deren Adresse über die REXX-Anweisung Expose an die Prozedur übergeben wurde.
Aufrufparameter
keine
Standardwerte
Parameter
Zugewiesene Standardwert
Anfangsindex
1
Endindex
stem.0
Rückgabewerte
keine
Bemerkungen
Die Funktion sortiert die ganzen Sätze der Stem-Variablen.
Die Stem-Variable stem.0 muss die Anzahl der Sätze in den Stem-Variablen stem. beinhalten, wenn der Aufrufparameter toX nicht verwendet wird.
Diese Implementierung sortiert in der aufsteigenden Reihenfolge - kleineren Elemente zuerst.

Sourcecode

/*=============( Shell sort )=============*/
SSort: Procedure Expose stem.

Do n = 2 While 2 ** n < stem.0;  End

Do m = n - 1 To 1 By -1
  k = 2**m - 1

  Do i = 1 to stem.0 - k
    j = i
    n = j + k

    x = stem.n
    Do While x << stem.j & j > 0
      stem.n = stem.j
      n = j
      j = j - k
    End
    stem.n = x
  End
End

Return ''
/*** End SSort ***/

Beispiel 1

Call SSort

Ergebnis 1

Sortiert vollständig (von 1 bis stem.0) die Variable stem.

Beispiel 2

x = SSort()

Ergebnis 2

Sortiert vollständig (von 1 bis stem.0) die Variable stem.
Your privacy: This web site has no cookies, no advertising and does not provide access data to anyone for any reason.
Copyright © Janosch R. Kowalczyk 1999, 2010. All rights reserved.
Most recent revision on 25 Feb 2010 (56) - 13:24:01.
Jakoxx Logo