Beim Versuch, die allererste Instanz eines Elements zu lokalisieren oder nach einem bestimmten Wert in einem sortierten Array zu suchen, die Lower_bound () Ansatz ist ziemlich praktisch. Es kann ein Element in einem sortierten Array mit einer o -Zeitkomplexität von o (log n) finden, was es zu einer effektiven Methode macht.
Syntax für Lower_bound in C++
Die Syntax für die Verwendung Lower_bound () ist wie folgt:
auto it = lower_bound (Start, Ende, Wert);
Hier, "Start" Und "Ende"Siehe Start und Stopp des angegebenen Bereichs, während"Wert”Bezeichnet den gewünschten Wert, nach dem man gesucht werden muss. Ein Iterator, der zum ersten Element in dem Bereich führt, der nicht kleiner als der Zielwert ist, ist das Rückgabeergebnis der Lower_bound () Funktion.
Die Eingänge zur Funktion Lower_bound () dort, wo alles funktioniert. Mehrere Elemente und der Wert, an den sie verglichen werden sollten, werden der Methode geliefert.
#enthalten
#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()
vector vect = 1,2,3,4,5;
DeclType (vect) :: iterator it = lower_bound (vect.begin (), vect.End (), 4);
Cout << "Position of "<< *it <<" = "<< (it - vect.begin()) << endl;
Rückkehr 0;
Im obigen Code verwenden wir einen Vektor "Vect" und Lower_bound () Funktion zur Bestimmung des Elements an der Stelle an der 4. Position im Vektor.
Ausgang
Bei Verwendung der Lower_bound () Funktion, es gibt einige andere entscheidende Faktoren, die zusätzlich zur grundlegenden Syntax berücksichtigt werden müssen. Erstens können benutzerdefinierte Vergleichsfunktionen mit dem verwendet werden Lower_bound () Funktion. Es vergleicht die Elemente standardmäßig mit dem weniger als Bediener, aber Sie können dieses Standardverhalten ändern, indem Sie Ihre eigene Vergleichsfunktion liefern.
Ein zweites Ergebnis der Lower_bound () Methode ist ein Iterator, der sich auf das Element bezieht, das nicht weniger als der Wert sein kann. Dies bedeutet, dass es eines der Elemente zurückgeben kann, wenn mehr als einer den gleichen Wert hat. Benutze die Lower_bound () Funktion in Kombination mit der Funktion für gleiches Bereich, um die erste Instanz des gewünschten Wertes zu lokalisieren.
Vorteile der Verwendung von Lower_Bound () -Methode
1: Zeit- und Raumkomplexität
In Bezug auf Zeit und Raumkomplexität das C++ Lower_bound () Ansatz ist sehr effektiv. Es ist eines der schnellsten und am besten optimierten Algorithmen, die massive Datenmengen verarbeiten können.
2: sortierte Datenbereiche
Als Lower_bound () Bietet das erste Element, das nicht kleiner als der angegebene Wert ist. Es ist auch eine nützliche Technik für die Arbeit mit sortierten Datenbereichen. Aufgrund dieser Eigenschaft ist es perfekt für Suchvorgänge in Arrays und anderen Datenstrukturen geeignet.
3: Arbeitet mit Arrays und Behältern
Schließlich ist es wichtig, sich daran zu erinnern, dass die Lower_bound () Die Methode funktioniert sowohl mit Arrays als auch mit Containern. Die Funktion funktioniert auf den sortierten Containerelementen, wenn sie mit Containern verwendet werden. Es wirkt auf eine Vielzahl von Array -Elementen, die im Gegensatz dazu bei Arrays verwendet werden.
Abschluss
Um mit sortierten Daten umzugehen, erfordert die Verwendung des c++ Lower_bound () Technik. Im Vergleich zu anderen Suchalgorithmen erzeugt es Ergebnisse, die effektiv, schnell und genau sind. Wenn Sie diese Technik in Ihren Code aufnehmen, können Sie Ihren Verbrauchern vertrauenswürdige Suchergebnisse geben und gleichzeitig viele Verarbeitungszeiten und Ressourcen sparen.