অ্যারে এবং ভেক্টর প্রতিযোগিতামূলক প্রোগ্রামিং-এ সমস্যা সমাধানের জন্য খুব গুরুত্বপূর্ণ ডেটা স্ট্রাকচার। এবং সি++ প্রোগ্রামিং-এ STL (স্ট্যান্ডার্ড টেমপ্লেট লাইব্রেরি) অ্যারে এবং ভেক্টরের ওপর অপারেশন করার জন্য কিছু ফাংশন প্রদান করে।
এই ফাংশনগুলো কাজে লাগানো দেখি,
অ্যারে/ভেক্টরের যোগফল, মিন এবং ম্যাক্স খুঁজে বের করা - STL-এ কিছু ফাংশন আছে যা আপনাকে অ্যারে/ভেক্টরের যোগফল, ম্যাক্স, এবং মিন খুঁজে বের করতে সাহায্য করে। ফাংশনগুলোর সাথে তাদের কাজ,
যোগফল খুঁজে বের করা
accumulate(startIndex, endIndex, initialSum)
অ্যারে/ভেক্টরের সর্বোচ্চ উপাদান
*max_element(startIndex, endIndex)
অ্যারে/ভেক্টরের সর্বনিম্ন উপাদান
*min_element(startIndex, endIndex)
অ্যারে ওপারেশন করার প্রোগ্রাম -
উদাহরণ
#include <bits/stdc++.h> using namespace std; int main(){ int array[] = {65, 7,12, 90, 31, 113 }; int l = sizeof(array) / sizeof(array[0]); cout<<"অ্যারেটির উপাদানগুলো হল : "; for(int i = 0; i<l; i++) cout<<array[i]<<"\t"; cout<<endl; cout<<"অ্যারের সব উপাদানের যোগফল: "<<accumulate(array, array + l, 0)<<endl; cout<<"অ্যারেতে সর্বোচ্চ মানযুক্ত উপাদান: "<<*max_element(array, array + l)<<endl; cout<<"অ্যারেতে সর্বনিম্ন মানযুক্ত উপাদান: "<<*min_element(array, array + l)<<endl; return 0; }
আউটপুট
অ্যারেটির উপাদানগুলো হল : 65 7 12 90 31 113 অ্যারের সব উপাদানের যোগফল: 318 অ্যারেতে সর্বোচ্চ মানযুক্ত উপাদান: 113 অ্যারেতে সর্বনিম্ন মানযুক্ত উপাদান: 7
ভেক্টর ওপারেশন করার প্রোগ্রাম -
উদাহরণ
#include <bits/stdc++.h> using namespace std; int main(){ vector<int> vec= {65, 7,12, 90, 31, 113 }; cout<<"ভেক্টরের সব উপাদানের যোগফল: "<<accumulate(vec.begin(), vec.end() + 1, 0)<<endl; cout<<"ভেক্টরে সর্বোচ্চ মানযুক্ত উপাদান: "<<*max_element(vec.begin(), vec.end())<<endl; cout<<"ভেক্টরে সর্বনিম্ন মানযুক্ত উপাদান: "<<*min_element(vec.begin(), vec.end())<<endl; return 0; }
আউটপুট
ভেক্টরের সব উপাদানের যোগফল: 318 ভেক্টরে সর্বোচ্চ মানযুক্ত উপাদান: 113 ভেক্টরে সর্বনিম্ন মানযুক্ত উপাদান: 7
অ্যারে/ভেক্টরের উপাদান সর্ট করা -
STL-এ একটি sort() ফাংশন আছে যা অ্যারে/ভেক্টরের উপাদান সর্ট করতে ব্যবহৃত হতে পারে। ফাংশনটি কুইক সোর্ট টেকনিক ব্যবহার করে অ্যারে/ভেক্টর সর্ট করে।
সিনট্যাক্স
sort(startIndex, endIndex)
অ্যারের উপাদান সর্ট করার প্রোগ্রাম -
উদাহরণ
#include <bits/stdc++.h> using namespace std; int main(){ int array[] = {65, 7,12, 90, 31, 113 }; int l = sizeof(array) / sizeof(array[0]); cout<<"অ্যারেটির উপাদানগুলো হল : "; for(int i = 0; i<l; i++) cout<<array[i]<<"\t"; cout<<endl; cout<<"\nঅ্যারের উপাদান সর্ট করা হচ্ছে...\n\n"; sort(array, array+l); cout<<"সর্ট করা অ্যারে হল : "; for(int i = 0; i<l; i++) cout<<array[i]<<"\t"; cout<<endl; return 0; }
আউটপুট
অ্যারেটির উপাদানগুলো হল : 65 7 12 90 31 113 অ্যারের উপাদান সর্ট করা হচ্ছে... সর্ট করা অ্যারে হল : 7 12 31 65 90 113
ভেক্টরের উপাদান সর্ট করার প্রোগ্রাম -
উদাহরণ
#include <bits/stdc++.h> using namespace std; int main(){ vector<int> vec = {65, 7,12, 90, 31, 113 }; cout<<"ভেক্টরের উপাদানগুলো হল : "; for(int i = 0; i<vec.size(); i++) cout<<vec[i]<<"\t"; cout<<endl; cout<<"\nভেক্টরের উপাদান সর্ট করা হচ্ছে...\n\n"; sort(vec.begin(), vec.end()); cout<<"সর্ট করা ভেক্টর হল : "; for(int i = 0; i<vec.size(); i++) cout<<vec[i]<<"\t"; cout<<endl; return 0; }
আউটপুট
ভেক্টরের উপাদানগুলো হল : 65 7 12 90 31 113 ভেক্টরের উপাদান সর্ট করা হচ্ছে... সর্ট করা ভেক্টর হল : 7 12 31 65 90 113