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

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

C++ STL-এ Set কী?

C++ STL-এ সেট হল এমন কন্টেইনার যেগুলো জেনারেল অর্ডারে ইউনিক এলিমেন্ট ধারণ করতে হবে। সেটে ইউনিক এলিমেন্ট থাকতে হয় কারণ এলিমেন্টের ভ্যালুই এলিমেন্টটিকে আইডেন্টিফাই করে। একবার একটি সেট কন্টেইনারে একটি ভ্যালু যোগ করলে পরে সেটা মডিফাই করা যায় না, যদিও আমরা এখনও সেটে ভ্যালু রিমুভ বা অ্যাড করতে পারি। সেটগুলো বাইনারি সার্চ ট্রি হিসেবে ব্যবহার করা হয়।

set::find() কী?

find() ফাংশন হল C++ STL-এ একটি বিল্ট-ইন ফাংশন, যা হেডার ফাইলে ডিফাইন করা আছে। এই ফাংশন একটি সেট কন্টেইনারে একটি এলিমেন্ট বা ভ্যালু খুঁজে বের করতে ব্যবহৃত হয়। find() একটি ইটারেটর রিটার্ন করে যা সার্চ করা এলিমেন্টের পজিশনকে পয়েন্ট করে। যদি এলিমেন্ট সেটে না থাকে, তবে এটি সেট কন্টেইনারের শেষ এলিমেন্টের ঠিক পরের এলিমেন্ট রিটার্ন করে।

সিনট্যাক্স

Set1.find(const type_t& element);

প্যারামিটার

এই ফাংশন এক প্যারামিটার গ্রহণ করে, অর্থাৎ वो এলিমেন্ট যা খুঁজে বের করতে হবে।

রিটার্ন ভ্যালু

এই ফাংশন একটি ইটারেটর রিটার্ন করে যা খুঁজে বের করা এলিমেন্টকে পয়েন্ট করে।

উদাহরণ

Input: set<int> myset = {10, 20, 40, 80, 90}; myset.find(40); Output: element found

সম্পূর্ণ কোড উদাহরণ ১

#include <bits/stdc++.h>
using namespace std;

int main() {
    set<int> mySet;
    mySet.insert(10);
    mySet.insert(20);
    mySet.insert(90);
    mySet.insert(80);
    mySet.insert(40);
    auto temp = mySet.find(40);
    cout << "Elements after 40 are: ";
    for (auto i = temp; i != mySet.end(); i++)
        cout << *i << " ";
    return 0;
}

আউটপুট

Elements after 40 are: 40 80 90

সম্পূর্ণ কোড উদাহরণ ২

#include <iostream>
#include <set>
int main () {
    std::set<int> mySet;
    std::set<int>::iterator i;
    for(int i = 1; i <= 4; i++)
        mySet.insert(i * 2);
    i = mySet.find(6);
    mySet.erase(i);
    mySet.erase(mySet.find(4));
    std::cout << "elements are : ";
    for (i = mySet.begin(); i != mySet.end(); ++i)
        std::cout << ' ' << *i;
    std::cout << '\n';
    return 0;
}

আউটপুট

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

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

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

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