Comment utiliser Lower_Bound en C ++

Comment utiliser Lower_Bound en C ++
En C ++, le borne inférieure() La fonction est fréquemment utilisée pour déterminer l'emplacement d'un élément dans un tableau trié. Il crée un itérateur faisant référence au premier élément qui n'est pas inférieur à la valeur de l'objectif tout en itérant dans la gamme.

Lorsque vous tentez de localiser la toute première instance d'un élément ou de rechercher une certaine valeur dans un tableau trié, le borne inférieure() L'approche est très pratique. Il peut trouver un élément dans un tableau trié avec une complexité de temps O (log n), ce qui en fait une méthode efficace.

Syntaxe pour Lower_Bound en C++

La syntaxe pour l'utilisation borne inférieure() est comme suit:

auto it = inférieur_bound (démarrage, fin, valeur);

Ici, "commencer" et "fin«Reportez-vous au début et à l'arrêt de la plage spécifiée, tandis que«valeur»Désigne la valeur souhaitée à rechercher. Un itérateur qui conduit au premier élément de la plage qui n'est pas plus petit que la valeur cible est le résultat de retour du borne inférieure() fonction.

Les entrées de la fonction borne inférieure() sont là où tout commence à fonctionner. Plusieurs éléments et la valeur à laquelle ils doivent être comparés sont fournis à la méthode.

#inclure
#inclure
#inclure
Utilisation de Namespace Std;
int main()

vector vect = 1,2,3,4,5;
DecType (vect) :: iterator it = bower_bound (vect.begin (), vect.end (), 4);
couter << "Position of "<< *it <<" = "<< (it - vect.begin()) << endl;
retour 0;

Dans le code ci-dessus, nous utilisons un «vecteur» et borne inférieure() fonction pour déterminer l'élément à l'emplacement en 4e position dans le vecteur.

Sortir

Lors de l'utilisation du borne inférieure() fonction, il existe quelques autres facteurs cruciaux pour prendre en compte en plus de la syntaxe fondamentale. Tout d'abord, les fonctions de comparaison personnalisées peuvent être utilisées avec le borne inférieure() fonction. Il compare les éléments par défaut en utilisant l'opérateur moins que, mais vous pouvez modifier ce comportement par défaut en fournissant votre propre fonction de comparaison.

Un deuxième résultat du borne inférieure() La méthode est un itérateur faisant référence à l'élément qui ne peut pas être inférieur à la valeur. Cela signifie qu'il peut renvoyer l'un des éléments si plus d'un a la même valeur. Utilisez le borne inférieure() Fonction en combinaison avec la fonction de plage égale pour localiser la première instance de la valeur souhaitée.

Avantages de l'utilisation de la méthode Lower_Bound ()

1: Complexité du temps et de l'espace

En termes de complexité de temps et d'espace, le C++ borne inférieure() L'approche est assez efficace. C'est l'un des algorithmes les plus rapides et les plus optimisés disponibles, et il peut traiter des volumes massifs de données sans subir de retard d'exécution appréciable.

2: Tri les plages de données triées

Comme borne inférieure() Offre le premier élément qui n'est pas plus petit que la valeur spécifiée, il s'agit également d'une technique utile pour travailler avec des plages de données triées. Il est parfait pour les opérations de recherche dans les tableaux et autres structures de données en raison de cette propriété.

3: Fonctionne avec des tableaux et des conteneurs

Enfin, il est important de se rappeler que le borne inférieure() La méthode fonctionne avec les tableaux et les conteneurs. La fonction fonctionne sur les éléments de conteneur triés lorsqu'il est utilisé avec des conteneurs. Il agit sur une variété d'articles de tableau lorsqu'il est employé avec des tableaux, en revanche.

Conclusion

Gérer les données triées nécessite l'utilisation du C++ borne inférieure() technique. Par rapport à d'autres algorithmes de recherche, il produit des résultats efficaces, rapides et précis. En incluant cette technique dans votre code, vous pouvez donner à vos consommateurs des résultats de recherche dignes de confiance tout en conservant beaucoup de temps et de ressources de traitement.