কম্পিউটার

C++ STL-এ crbegin() এবং crend() ফাংশন সেট করুন


এই নিবন্ধে আমরা C++ STL-এ সেট::crbegin() এবং set::crend() ফাংশন, তাদের সিনট্যাক্স, কাজ এবং তাদের রিটার্ন মান নিয়ে আলোচনা করতে যাচ্ছি।

C++ STL এ কি সেট করা আছে?

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

সেট কি::crbegin()?

crbegin() ফাংশন হল C++ STL-এ একটি অন্তর্নির্মিত ফাংশন, যা হেডার ফাইলে সংজ্ঞায়িত করা হয়েছে। crbegin() বোঝায় ধ্রুবক বিপরীত শুরু পুনরাবৃত্তিকারী, মানে cbegin এর বিপরীত যা ধ্রুবক শুরু পুনরাবৃত্তিকারী ছিল, অন্য কথায় ফাংশন crbegin() ইটারেটরকে ফিরিয়ে দেবে যা ফাংশনের সাথে যুক্ত সেট কন্টেইনারের শেষ উপাদানটির দিকে নির্দেশ করে। অন্যান্য পুনরাবৃত্তির মত এটিও সেট পরিবর্তন করতে ব্যবহার করা যেতে পারে। এটি শুধুমাত্র সেট কন্টেইনার অতিক্রম করতে ব্যবহার করা যেতে পারে।

সিনট্যাক্স

constant_iterator name_of_set.crbegin();

প্যারামিটার

এই ফাংশন কোনো প্যারামিটার গ্রহণ করে না।

রিটার্ন মান

এই ফাংশনটি ইটারেটর প্রদান করে যা সেট কন্টেইনারের শেষ উপাদানটির দিকে নির্দেশ করে।

উদাহরণ

Input: set<int> myset = {1, 2, 3, 4, 5};
   myset.crbegin();
Output: 5

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
int main(){
   int arr[] = {1, 2, 3, 4, 5};
   set<int> ch(arr, arr + 5);
   for (auto i = ch.crbegin(); i!= ch.crend(); i++)
      cout << *i << " ";
   return 0;
}

আউটপুট

যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট তৈরি করবে

5 4 3 2 1

কী সেট করা হয়েছে::crend()

crend() ফাংশন হল C++ STL-এ একটি অন্তর্নির্মিত ফাংশন, যা হেডার ফাইলে সংজ্ঞায়িত করা হয়েছে। crend() বোঝায় ধ্রুবক বিপরীত শেষ পুনরাবৃত্তিকারী, মানে সেন্ডের বিপরীত যা ধ্রুবক শেষ পুনরাবৃত্তিকারী ছিল, অন্য কথায় ফাংশন crend() ইটারেটরকে ফিরিয়ে দেবে যা সেট কন্টেইনারের প্রথম অবস্থানের ঠিক আগে অবস্থানের দিকে নির্দেশ করছে কাজ. অন্যান্য পুনরাবৃত্তির মত এটিও সেট পরিবর্তন করতে ব্যবহার করা যেতে পারে। এটি শুধুমাত্র সেট কন্টেইনার অতিক্রম করতে ব্যবহার করা যেতে পারে।

সিনট্যাক্স

constant_iterator name_of_set.crend();

প্যারামিটার

এই ফাংশন কোনো প্যারামিটার গ্রহণ করে না।

রিটার্ন মান

এই ফাংশনটি ইটারেটর প্রদান করে যা ফাংশনের সাথে যুক্ত সেট কন্টেইনারের প্রথম অবস্থানের ঠিক আগে অবস্থানের দিকে নির্দেশ করে৷

উদাহরণ

Input: set<int> myset = {1, 2, 3, 4, 5};
myset.crend();
Output: 9 //random number before the first element in the set container.

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
int main(){
   int arr[] = {3, 5, 8, 1, 9};
   set<int> ch(arr, arr + 5);
   for(auto i = ch.crbegin(); i!= ch.crend(); i++)
      cout << *i<< " ";
   return 0;
}

আউটপুট

যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট তৈরি করবে

9 8 5 3 1

  1. সেট::begin() এবং সেট::end() C++ STL এ

  2. C++ STL-এ low_bound() ফাংশন সেট করুন

  3. C++ STL-এ find() ফাংশন সেট করুন

  4. STL সেট C++ এ সন্নিবেশ এবং মুছে ফেলা