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

C++ STL-এ list::empty() ফাংশন

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

STL-এ List কী?

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

list::empty() কী?

list::empty() C++ STL-এ একটি বিল্ট-ইন ফাংশন যা <list> হেডার ফাইলে ডিক্লেয়ার করা আছে। এই ফাংশন চেক করে যে দেওয়া লিস্ট কন্টেইনারটি খালি (সাইজ ০) কিনা। খালি হলে true, অন্যথায় false রিটার্ন করে।

সিনট্যাক্স

bool list_name.empty();

এই ফাংশন কোনো মান গ্রহণ করে না।

রিটার্ন ভ্যালু

কন্টেইনারের সাইজ শূন্য হলে true, অন্যথায় false রিটার্ন করে।

উদাহরণ ১

#include <bits/stdc++.h>
using namespace std;

int main() {
    list<int> myList; //to create a list
    //call empty() function to check if list is empty or not
    if (myList.empty())
        cout << "my list is empty\n";
    else
        cout << "my list isn't empty\n";
    //push_back() is used to insert element in a list
    myList.push_back(1);
    myList.push_back(2);
    myList.push_back(3);
    myList.push_back(4);
    if (myList.empty())
        cout << "my list is empty\n";
    else
        cout << "my list is not empty\n";
    return 0;
}

আউটপুট

my list is empty
my list is not empty

উদাহরণ ২: ১ থেকে ১০ পর্যন্ত গুণফল বের করা

#include <bits/stdc++.h>
using namespace std;

int main() {
    list<int> myList;
    long long product = 1; // শুরুতে ১ রাখা উচিত, ০ রাখলে গুণফল ০ হবে
    for (int i = 1; i <= 10; ++i)
        myList.push_back(i);
    while (!myList.empty()) {
        product *= myList.front();
        myList.pop_front();
    }
    cout << "product of numbers from 1-10 is: " << product << '\n';
    return 0;
}

আউটপুট

product of numbers from 1-10 is: 3628800

সংশোধন: মূল কোডে int product = 0; ছিল, যা ভুল কারণ ০ দিয়ে গুণ করলে ফলাফল ০ হয়। এখানে long long product = 1; ব্যবহার করা হয়েছে।

  1. C++ STL-এ List reverse ফাংশন

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

  3. C++ STL-এ List assign() ফাংশন

  4. C++ STL-এ list back() ফাংশন