কম্পিউটার টিউটোরিয়াল

C++ STL-এ set::lower_bound() ফাংশন

lower_bound() ফাংশন

set::lower_bound(k) একটি ইটেরেটর রিটার্ন করে যা k-এর সমান বা তার ঠিক পরবর্তী বড় এলিমেন্টকে পয়েন্ট করে। যদি k সেটে থাকে, তবে সেটি পয়েন্ট করবে। না থাকলে, k-এর চেয়ে বড় সবচেয়ে ছোট এলিমেন্টকে পয়েন্ট করবে। যদি এমন কোনো এলিমেন্ট নেই (সকল এলিমেন্ট k-এর চেয়ে ছোট), তবে end() রিটার্ন করে।

উদাহরণ কোড

#include <iostream>
#include <set>
using namespace std;

int main() {
    set<int> s = {1, 2, 4, 6, 7, 9, 10};
    auto it = s.lower_bound(4);
    cout << "lower_bound(4): " << *it << endl; // 4

    it = s.lower_bound(5);
    cout << "lower_bound(5): " << *it << endl; // 6 (5 নেই, পরবর্তী বড় 6)

    it = s.lower_bound(30);
    if (it == s.end()) cout << "lower_bound(30): end() (not found)" << endl;
    else cout << *it << endl;
    return 0;
}

আউটপুট

lower_bound(4): 4
lower_bound(5): 6
lower_bound(30): end() (not found)

সময় জটিলতা: O(log n)।

  1. C++ STL-এ set::lower_bound() ফাংশন

  2. C++ STL-এ set::find() ফাংশন

  3. C++ STL-এ negate ফাংশন: মানগুলোর সাইন পরিবর্তন

  4. C++ STL-এ atan2() ফাংশন