VF_searchVVD_searchVVE_searchV
Funktionbinäre Suche nach dem jedem Element eines Vektors am nächsten kommenden Eintrag einer Tabelle
Syntax C/C++#include <VFstd.h>
void VF_searchV( uiVector Ind, fVector X, ui sizex, fVector Tab, ui sizetab, int mode );
C++ VecObj#include <OptiVec.h>
void vector<ui>::searchV( const vector<T>& X, const vector<T>& Tab, int mode );
Pascal/Delphiuses VFmath;
procedure VF_searchV( Ind:uiVector; X:fVector; sizex:UIntSize; Tab:fVector; sizetab:UIntSize; mode:Integer );
CUDA-Funktion C/C++#include <cudaVFstd.h>
int cudaVF_searchV( uiVector d_Ind, fVector d_X, ui sizex, fVector d_Tab, ui sizetab, int mode );
void VFcu_searchV( uiVector h_Ind, fVector h_X, ui sizex, fVector h_Tab, ui sizetab, int mode );
CUDA-Funktion Pascal/Delphiuses VFstd;
function cudaVF_searchV( d_Ind:uiVector; d_X:fVector; sizex:UIntSize; d_Tab:fVector; sizetab:UIntSize; mode:Integer ): IntBool;
procedure VFcu_searchV( h_Ind:uiVector; h_X:fVector; sizex:UIntSize; h_Tab:fVector; sizetab:UIntSize; mode:Integer );
BeschreibungTab wird als geordnete Tabelle angenommen (in streng aufsteigender oder fallender Ordnung). Für jedes Element von X wird der diesem am nächsten kommende Tabelleneintrag gesucht. Liegt Xi außerhalb des durch die Tabelle abgedeckten Wertebereiches, so wird das erste bzw. letzte Tabellenelement gewählt. Liegt Xi innerhalb des Bereiches, so entscheidet der als mode gewählte Such-Modus über das Ergebnis:
mode = +1: das nächste größere oder gleiche Element wird gefunden;
mode =   0:das Xi am nächsten kommende Element wird gefunden; sind zwei Elemente gleich weit von Xi entfernt, so wird dasjenige mit dem niedrigeren Index gewählt;
mode =  -1:das nächste kleinere oder gleiche Element wird gefunden.

sizex ist die Größe von X und von Ind, während sizetab die Größe der Tabelle Tab angibt.

Fehlerbehandlungkeine
Rückgabewertkeiner
QuerverweisVF_searchC,   VF_indpick,   VF_sortind,   VF_polyinterpol

VectorLib Inhaltsverzeichnis  OptiVec Home