lower_bound()関数を使用する方法について、以下にいくつかのコード例を示します。
- 配列のlower_bound()の使用例:
#include <iostream>
#include <algorithm>
#include <vector>
int main() {
std::vector<int> numbers = {1, 3, 5, 7, 9};
int target = 6;
auto it = std::lower_bound(numbers.begin(), numbers.end(), target);
if (it != numbers.end()) {
std::cout << "Found element " << *it << " at index " << std::distance(numbers.begin(), it) << std::endl;
} else {
std::cout << "Element not found" << std::endl;
}
return 0;
}
この例では、配列「numbers」内の要素から値6以上の最初の要素を検索しています。lower_bound()関数はイテレータを返し、それを使用して要素の値とインデックスを表示しています。
- リストのlower_bound()の使用例:
#include <iostream>
#include <algorithm>
#include <list>
int main() {
std::list<int> numbers = {2, 4, 6, 8, 10};
int target = 5;
auto it = std::lower_bound(numbers.begin(), numbers.end(), target);
if (it != numbers.end()) {
std::cout << "Found element " << *it << std::endl;
} else {
std::cout << "Element not found" << std::endl;
}
return 0;
}
この例では、リスト「numbers」内の要素から値5以上の最初の要素を検索しています。
これらのコード例を実行すると、lower_bound()関数の使用方法と結果を確認できます。lower_bound()関数は、ソートされたコンテナ内での要素の検索に便利な関数です。