C++ STL-এ Set কী?
C++ STL-এ সেট হল এমন কন্টেইনার যেগুলো জেনারেল অর্ডারে ইউনিক এলিমেন্ট ধারণ করতে হবে। সেটে ইউনিক এলিমেন্ট থাকতে হয় কারণ এলিমেন্টের ভ্যালুই এলিমেন্টটিকে আইডেন্টিফাই করে। একবার সেট কন্টেইনারে একটি ভ্যালু যোগ করলে পরে সেটা মডিফাই করা যায় না, যদিও আমরা এখনও সেটে ভ্যালু রিমুভ বা অ্যাড করতে পারি। সেটগুলো বাইনারি সার্চ ট্রি হিসেবে ব্যবহার করা হয়।
set::crbegin() কী?
crbegin() ফাংশন হল C++ STL-এ একটি বিল্ট-ইন ফাংশন, যা
সিনট্যাক্স
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
set::crend() কী?
crend() ফাংশন হল C++ STL-এ একটি বিল্ট-ইন ফাংশন, যা
সিনট্যাক্স
constant_iterator name_of_set.crend();
প্যারামিটার
এই ফাংশন কোনো প্যারামিটার গ্রহণ করে না।
রিটার্ন ভ্যালু
এই ফাংশন সংশ্লিষ্ট সেট কন্টেইনারের প্রথম পজিশনের ঠিক আগের পজিশনকে পয়েন্ট করে একটি ইটারেটর রিটার্ন করে।
উদাহরণ
Input: set<int> myset = {1, 2, 3, 4, 5}; myset.crend(); Output: 9 // সেট কন্টেইনারের প্রথম এলিমেন্টের আগের র্যান্ডম নম্বর
সম্পূর্ণ কোড উদাহরণ
#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