এই আর্টিকেলে আমরা C++-এ list::pop_back() ফাংশনের কাজ, সিনট্যাক্স এবং উদাহরণ আলোচনা করব।
STL-এ List কী?
List হলো একটি ডেটা স্ট্রাকচার যা সিকোয়েন্সে যেকোনো জায়গায় কনস্ট্যান্ট টাইমে ইনসারশন এবং ডিলিশন অনুমতি দেয়। লিস্টগুলো ডাবলি লিংকড লিস্ট হিসেবে ইমপ্লিমেন্ট করা হয়। লিস্ট নন-কন্টিগুয়াস মেমরি এলোকেশন অনুমতি দেয়। অ্যারের, ভেক্টরের এবং ডিকের চেয়ে লিস্টে ইনসারশন, এক্সট্রাকশন এবং এলিমেন্ট মুভিং যেকোনো পজিশনে দ্রুত হয়। লিস্টে এলিমেন্টে ডায়রেক্ট অ্যাক্সেস ধীর এবং লিস্ট forward_list-এর মতো, কিন্তু forward list অবজেক্টগুলো সিঙ্গলি লিংকড লিস্ট এবং সেগুলো শুধু ফরওয়ার্ডে ইটারেট করা যায়।
list::pop_back() কী?
list::pop_back() হলো C++ STL-এ একটি বিল্ট-ইন ফাংশন যা <list> হেডার ফাইলে ডিক্লেয়ার করা আছে। pop_back() লিস্ট কন্টেইনারের পেছোন বা লাস্ট থেকে এলিমেন্ট রিমুভ/পপ করতে ব্যবহৃত হয়। যখন pop_back ব্যবহার করা হয়, তখন এটি লাস্ট এলিমেন্ট রিমুভ করে এবং লাস্ট এলিমেন্টের আগের এলিমেন্টটি লাস্ট এলিমেন্ট হয়ে যায় এবং লিস্ট কন্টেইনারের আকার ১ কমে যায়।
সিনট্যাক্স
list_container.pop_back();
এই ফাংশন কোনো প্যারামিটার নেয় না।
রিটার্ন ভ্যালু
এই ফাংশন কিছু রিটার্ন করে না।
উদাহরণ
নিচের কোডে আমরা pop_back() ফাংশন ব্যবহার করে একটি লিস্টের শেষ থেকে এলিমেন্ট ডিলিট করব।
#include <bits/stdc++.h> using namespace std; int main(){ //create a list list<int> myList; //inserting elements to a list myList.push_back(4); myList.push_back(9); myList.push_back(1); myList.push_back(3); //list before poping out the elements cout<<"list elements before deletion : "; for (auto i = myList.begin(); i != myList.end(); i++) cout << *i << " "; //removing elements from the end of a list using pop_back() myList.pop_back(); // List after removing element from end cout << "\nList after deleting element from the end: "; for (auto i = myList.begin(); i != myList.end(); i++) cout << *i << " "; return 0; }
আউটপুট
উপরোক্ত কোড রান করলে নিচের আউটপুট জেনারেট হবে
list elements before deletion : 4 9 1 3 List after deleting element from the end: 4 9 1
উদাহরণ
নিচের কোডে আমরা pop_back() ফাংশন ব্যবহার করে লিস্টের শেষ থেকে এলিমেন্ট ডিলিট করব এবং সাথে সাথে লিস্টের সংখ্যাগুণফল বের করব।
#include <bits/stdc++.h> using namespace std; int main(){ list<int> myList; int product = 1; myList.push_back (40); myList.push_back (20); myList.push_back (30); while (!myList.empty()){ product*=myList.back(); myList.pop_back(); } cout<<"The product of elements in my list : "<<product<< '\n'; return 0; }
আউটপুট
উপরোক্ত কোড রান করলে নিচের আউটপুট জেনারেট হবে
The product of elements in my list : 24000