Quando si tenta di individuare la prima istanza di un elemento o cercare un certo valore in un array ordinato, il limite inferiore() L'approccio è abbastanza utile. Può trovare un elemento in un array ordinato con una complessità del tempo O (log n), rendendolo un metodo efficace.
Sintassi per lower_bound in c++
La sintassi per l'utilizzo limite inferiore() è come segue:
Auto IT = Lower_Bound (start, end, valore);
Qui, "inizio" E "FINE"Fare riferimento all'inizio e all'arresto dell'intervallo specificato, mentre"valore"Designa il valore desiderato da cercare. Un iteratore che porta al primo elemento nell'intervallo che non è inferiore al valore target è il risultato di restituzione del limite inferiore() funzione.
Gli ingressi alla funzione limite inferiore() sono dove tutto inizia a funzionare. Diversi elementi e il valore a cui dovrebbero essere confrontati sono forniti al metodo.
#includere
#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()
vector vect = 1,2,3,4,5;
decltype (vect) :: iterator it = lower_bound (vect.inizia (), vect.fine (), 4);
cout << "Position of "<< *it <<" = "<< (it - vect.begin()) << endl;
restituzione 0;
Nel codice sopra, stiamo usando un vettore "vecdo" e limite inferiore() funzione per determinare l'elemento nella posizione in 4a posizione nel vettore.
Produzione
Quando si utilizza il limite inferiore() funzione, ci sono alcuni altri fattori cruciali da tenere in considerazione oltre alla sintassi fondamentale. Innanzitutto, le funzioni di confronto personalizzate possono essere utilizzate con il limite inferiore() funzione. Confronta gli elementi per impostazione predefinita utilizzando l'operatore inferiore a.
Un secondo risultato del limite inferiore() Il metodo è un iteratore che si riferisce all'elemento che non può essere inferiore al valore. Ciò significa che può restituire uno degli elementi se più di uno ha lo stesso valore. Usa il limite inferiore() funzione in combinazione con la funzione di equa gamma per individuare la prima istanza del valore desiderato.
Vantaggi dell'utilizzo del metodo Lower_bound ()
1: complessità del tempo e dello spazio
In termini di complessità del tempo e dello spazio, la C++ limite inferiore() L'approccio è abbastanza efficace. È uno degli algoritmi più veloci e più ottimizzati disponibili e può elaborare enormi volumi di dati senza riscontrare ritardi di esecuzione apprezzabili.
2: intervalli di dati ordinati
COME limite inferiore() offre il primo elemento che non è inferiore al valore specificato, è anche una tecnica utile per lavorare con intervalli di dati ordinati. È perfetto per le operazioni di ricerca in array e altre strutture di dati a causa di questa proprietà.
3: funziona con array e contenitori
Infine, è importante ricordare che il limite inferiore() Il metodo funziona con array e contenitori. La funzione funziona sugli elementi del contenitore ordinato se utilizzato con i contenitori. Agisce su una varietà di elementi di array se impiegato con array, al contrario.
Conclusione
Affrontare i dati ordinati richiede l'uso del C++ limite inferiore() tecnica. Rispetto ad altri algoritmi di ricerca, produce risultati efficaci, rapidi e accurati. Includendo questa tecnica nel tuo codice, puoi dare ai tuoi consumatori i risultati di ricerca affidabili conserva molto tempo e risorse di elaborazione.