ভেক্টরগুলো ডাইনামিক অ্যারে এর মতো স্বয়ংক্রিয়ভাবে আকার পরিবর্তন করতে পারে যখন কোনো উপাদান ইনসার্ট বা ডিলিট করা হয়, কন্টেইনার তাদের স্টোরেজ স্বয়ংক্রিয়ভাবে হ্যান্ডেল করে। ভেক্টরের উপাদানগুলো সংলগ্ন স্টোরেজে রাখা হয় যাতে সেগুলো ইটারেটর ব্যবহার করে অ্যাক্সেস ও ট্রাভার্স করা যায়। ডেটা ভেক্টরের শুরু, মাঝপথ বা শেষে ইনসার্ট বা ইরেজ করা যায়।
এটি ভেক্টরের বিভিন্ন ফাংশন ইমপ্লিমেন্ট করার একটি C++ প্রোগ্রাম।
অ্যালগরিদম
শুরু v ভেরিয়েবল ভেক্টর টাইপ ঘোষণা করুন। it ভেরিয়েবল ভেক্টর টাইপের ইটারেটর হিসেবে ঘোষণা করুন। c এবং i দুটি ভেরিয়েবল ইন্টিজার ডেটা টাইপে ঘোষণা করুন। while (1) করুন "১. ভেক্টরের আকার" প্রিন্ট করুন। "২. ভেক্টরে উপাদান ইনসার্ট করুন" প্রিন্ট করুন। "৩. ভেক্টরের শেষ উপাদান ডিলিট করুন" প্রিন্ট করুন। "৪. ভেক্টর রিসাইজ করুন" প্রিন্ট করুন। "৫. ভেক্টর রিজার্ভ করুন" প্রিন্ট করুন। "৬. ভেক্টরের ক্যাপাসিটি দেখান" প্রিন্ট করুন। "৭. ইটারেটর দিয়ে প্রদর্শন করুন" প্রিন্ট করুন। "৮. ভেক্টর ক্লিয়ার করুন" প্রিন্ট করুন। "৯. বের হোন" প্রিন্ট করুন। "আপনার পছন্দ লিখুন:" প্রিন্ট করুন। c ভেরিয়েবলের মান ইনপুট নিন। Switch(c) Case 1. "ভেক্টরের আকার:" প্রিন্ট করুন। ভেক্টরের আকার প্রিন্ট করতে size() ফাংশন কল করুন। Break. Case 2. "ইনসার্ট করার মান লিখুন:" প্রিন্ট করুন। i ভেরিয়েবলের মান ইনপুট নিন। ভেক্টরে মান ইনপুট দিতে push_back() ফাংশন কল করুন। Break. Case 3. "ইনসার্ট করা শেষ উপাদান ডিলিট:" প্রিন্ট করুন। ভেক্টরে মান ডিলিট করতে pop_back() ফাংশন কল করুন। Break. Case 4. "ভেক্টরের উপাদান রিসাইজ:" প্রিন্ট করুন। ভেক্টর রিসাইজ করতে resize() ফাংশন কল করুন। Break. Case 5. "ভেক্টরের উপাদান রিজার্ভ:" প্রিন্ট করুন। ভেক্টরের আকার রিজার্ভ করতে reserve() ফাংশন কল করুন। Break. Case 6. "ভেক্টরের ক্যাপাসিটি প্রদর্শন:" প্রিন্ট করুন। ভেক্টরের ক্যাপাসিটি প্রদর্শন করতে capacity() ফাংশন কল করুন। Break. Case 7. "ইটারেটর দিয়ে ভেক্টর প্রদর্শন:" প্রিন্ট করুন। for (it = v.begin(); it != v.end(); it++) it ইটারেটরের মান প্রিন্ট করুন। Break. Case 8. ভেক্টর ক্লিয়ার করতে clear() ফাংশন কল করুন। "ভেক্টর ক্লিয়ার হয়েছে" প্রিন্ট করুন। break case 9. বের হওয়ার জন্য exit() ফাংশন কল করুন। break. Default. "ভুল পছন্দ" প্রিন্ট করুন। শেষ।
উদাহরণ কোড
#include <iostream> #include <vector> using namespace std; int main() { vector<int> v; vector<int>::iterator it; int c, i; while (1) { cout << "১. ভেক্টরের আকার" << endl; cout << "২. ভেক্টরে উপাদান ইনসার্ট করুন" << endl; cout << "৩. ভেক্টরের শেষ উপাদান ডিলিট করুন" << endl; cout << "৪. ভেক্টর রিসাইজ করুন" << endl; cout << "৫. ভেক্টর রিজার্ভ করুন" << endl; cout << "৬. ভেক্টরের ক্যাপাসিটি দেখান" << endl; cout << "৭. ইটারেটর দিয়ে প্রদর্শন করুন" << endl; cout << "৮. ভেক্টর ক্লিয়ার করুন" << endl; cout << "৯. বের হোন" << endl; cout << "আপনার পছন্দ লিখুন: "; cin >> c; switch(c) { case 1: cout << "ভেক্টরের আকার: "; cout << v.size() << endl; break; case 2: cout << "ইনসার্ট করার মান লিখুন: "; cin >> i; v.push_back(i); break; case 3: cout << "ইনসার্ট করা শেষ উপাদান ডিলিট:" << endl; v.pop_back(); break; case 4: cout << "ভেক্টরের উপাদান রিসাইজ:" << endl; v.resize(10); break; case 5: cout << "ভেক্টরের উপাদান রিজার্ভ:" << endl; v.reserve(100); break; case 6: cout << "ভেক্টরের ক্যাপাসিটি প্রদর্শন: "; cout << v.capacity() << endl; break; case 7: cout << "ইটারেটর দিয়ে ভেক্টর প্রদর্শন: "; for (it = v.begin(); it != v.end(); it++) { cout << *it << " "; } cout << endl; break; case 8: v.clear(); cout << "ভেক্টর ক্লিয়ার হয়েছে" << endl; break; case 9: exit(1); break; default: cout << "ভুল পছন্দ" << endl; } } return 0; }আউটপুট
১. ভেক্টরের আকার ২. ভেক্টরে উপাদান ইনসার্ট করুন ৩. ভেক্টরের শেষ উপাদান ডিলিট করুন ৪. ভেক্টর রিসাইজ করুন ৫. রিজার্ভ ভেক্টর ৬. ভেক্টরের ক্যাপাসিটি দেখান ৭. ইটারেটর দিয়ে প্রদর্শন করুন ৮. ভেক্টর ক্লিয়ার করুন ৯. বের হোন আপনার পছন্দ লিখুন: ১ ভেক্টরের আকার: ০ ১. ভেক্টরের আকার ২. ভেক্টরে উপাদান ইনসার্ট করুন ৩. ভেক্টরের শেষ উপাদান ডিলিট করুন ৪. ভেক্টর রিসাইজ করুন ৫. রিজার্ভ ভেক্টর ৬. ভেক্টরের ক্যাপাসিটি দেখান ৭. ইটারেটর দিয়ে প্রদর্শন করুন ৮. ভেক্টর ক্লিয়ার করুন ৯. বের হোন আপনার পছন্দ লিখুন: ২ ইনসার্ট করার মান লিখুন: ১ ১. ভেক্টরের আকার ২. ভেক্টরে উপাদান ইনসার্ট করুন ৩. ভেক্টরের শেষ উপাদান ডিলিট করুন ৪. ভেক্টর রিসাইজ করুন ৫. রিজার্ভ ভেক্টর ৬. ভেক্টরের ক্যাপাসিটি দেখান ৭. ইটারেটর দিয়ে প্রদর্শন করুন ৮. ভেক্টর ক্লিয়ার করুন ৯. বের হোন আপনার পছন্দ লিখুন: ২ ইনসার্ট করার মান লিখুন: ৩ ... (সংক্ষিপ্ত)