Seite durchsuchen nach:
(powered by
FreeFind)
Bemerkung: Manche Browser haben offensichlich Probleme mit CSS. Für die richtige Darstellung dieser Seiten verwenden Sie am besten
Firefox oder
Opera.
Syntax
found = BiSearch( searchArg ) [;]
Beschreibung
Diese interne REXX-Funktion sucht eine sortierte Liste nach dem als
Aufrufparameter angegebenen Satz durch.
Aufrufparameter
searchArg
Gesuchter Listensatz
Rückgabewerte
found
Index der Stemvariablen, die dem gesuchten Satz gleich ist.
0
Eine Null, wenn kein Satz gefunden wurde.
Bemerkungen
Eine Liste ist eine durchnumerierte Stem-Variable mit der Anzahl der
Sätze in der Stem-Variablen mit dem Index 0.
Gesucht wird der volle Inhalt der Stem-Variablen (Satz).
In dieser Beispielimplementierung ist die Liste in der Stem-Variablen mit dem Stamm-Namen
stem. abgespeichert. Dieser Name wurde durch die Anweisung
Expose an die Prozedur Übergeben.
Es wird der Index der ersten gefundenen Stmvwariablen zurück gegeben.
Es kann allerdings weitere Variablen geben, die den Suchkriterien entsprechen
Sourcecode
/*============( Binary search )==============*/
BiSearch: Procedure Expose stem.
Parse Arg value /* Search value */
found = 0 /* Index of the found Item */
bottom = 1 /* Index of the first Item */
top = stem.0 /* Index of the last Item */
Do While found = 0 & top >= bottom
mean = (bottom + top) % 2
If value == stem.mean Then found = mean
Else If value < stem.mean Then top = mean - 1
Else bottom = mean + 1
End
Return found
/*** End BiSearch ***/
Beispiel 1
stem. = "Z"
stem.0 = 10
stem.1 = "/* REXX */"
found = BiSearch( "/* REXX */" )
Say found
Ergebnis 1
1
Beispiel 2
stem. = "Z"
stem.0 = 20
stem.1 = "/* REXX */"
found = BiSearch( "REXX" )
Say found
Ergebnis 2
0
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:21:32.