কম্পিউটার টিউটোরিয়াল

C++ STL-এ list::push_front() এবং list::push_back() ফাংশন

এই নিবন্ধে আমরা C++ STL-এ list::push_front() এবং list::push_back() ফাংশনগুলির কাজকাজ, সিনট্যাক্স এবং উদাহরণ নিয়ে আলোচনা করব।

STL-এ List কী?

list হল একটি ডেটা স্ট্রাকচার যা সিকোয়েন্সের যেকোনো স্থানে কনস্ট্যান্ট টাইমে ইনসারশন এবং ডিলিশন করার অনুমতি দেয়। লিস্ট ডাবলি লিংকড লিস্ট হিসেবে বাস্তবায়িত হয়। লিস্ট নন-কন্টিগ্যুয়াস মেমরি অ্যালোকেশন অনুমতি দেয়। অ্যারের, ভেক্টরের এবং ডিকের চেয়ে লিস্টে যেকোনো পজিশনে এলিমেন্ট ইনসার্ট, এক্সট্র্যাক্ট এবং মুভ করা দ্রুত হয়। লিস্টে ডায়রেক্ট এলিমেন্ট অ্যাক্সেস ধীর, তবে এটি forward_list-এর সাথে মিলিত, কিন্তু ফরওয়ার্ড লিস্ট সিঙ্গলি লিংকড লিস্ট এবং শুধু ফরওয়ার্ড দিক থেকে ইটারেট করা যায়।

list::push_front() কী?

list::push_front() হল C++ STL-এ একটি বিল্ট-ইন ফাংশন যা <list> হেডার ফাইলে ঘোষিত। এটি লিস্ট কন্টেইনারের সামনে (শুরুতে) এলিমেন্ট পুশ/ইনসার্ট করতে ব্যবহৃত হয়। নতুন এলিমেন্ট শুরুর সাথে যুক্ত হলে, পূর্বের প্রথম এলিমেন্ট দ্বিতীয় এলিমেন্ট হয়ে যায় এবং লিস্টের সাইজ ১ বৃদ্ধি পায়।

সিনট্যাক্স

list_container1.push_front(value_type& value);

প্যারামিটার

এই ফাংশন একটি প্যারামিটার গ্রহণ করে যা লিস্টের শুরুতে ইনসার্ট করার জন্য মান।

রিটার্ন মান

এই ফাংশন কিছুই রিটার্ন করে না।

উদাহরণ

Input: list<int> List_container = {10, 11, 13, 15}; List_container.push_front(9); Output: List = 9 10 11 13 15

পূর্ণ কোড উদাহরণ

#include <iostream> 
#include <list> 
using namespace std; 

int main() {
    list<int> myList{};
    myList.push_front(10);
    myList.push_front(20);
    myList.push_front(30);
    myList.push_front(40);
    myList.push_front(50);
    myList.sort();
    cout << "Elements in the list are : ";
    for (auto i = myList.begin(); i != myList.end(); ++i)
        cout << ' ' << *i;
    return 0;
}

আউটপুট

Elements in the list are : 10 20 30 40 50

list::push_back() কী?

list::push_back() হল C++ STL-এ একটি বিল্ট-ইন ফাংশন যা <list> হেডার ফাইলে ঘোষিত। এটি লিস্ট কন্টেইনারের শেষে এলিমেন্ট পুশ/ইনসার্ট করতে ব্যবহৃত হয়। নতুন এলিমেন্ট শেষে যুক্ত হলে, পূর্বের শেষ এলিমেন্ট দ্বিতীয় শেষ এলিমেন্ট হয়ে যায় এবং লিস্টের সাইজ ১ বৃদ্ধি পায়।

সিনট্যাক্স

list_container1.push_back(value_type& value);

প্যারামিটার

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

রিটার্ন মান

এই ফাংশন কিছুই রিটার্ন করে না।

উদাহরণ

Input: list<int> List_container = {10, 11, 13, 15}; List_container.push_back(9); Output: List = 10 11 13 15 9

পূর্ণ কোড উদাহরণ

#include <iostream> 
#include <list> 
using namespace std; 

int main() {
    list<int> myList{};
    myList.push_back(10);
    myList.push_back(20);
    myList.push_back(30);
    myList.push_back(40);
    myList.push_back(50);
    myList.sort();
    cout << "Elements in the list are : ";
    for (auto i = myList.begin(); i != myList.end(); ++i)
        cout << ' ' << *i;
    return 0;
}

আউটপুট

Elements in the list are : 10 20 30 40 50
  1. C++ STL-এ list insert() ফাংশন

  2. C++ STL-এ list unique() ফাংশন

  3. C++ STL-এ list begin() এবং list end() ফাংশন

  4. C++ STL-এ list crbegin() এবং crend() ফাংশন