কম্পিউটার

C++ হ্যাশম্যাপ থেকে কী ব্যবহার করে এটির উপর পুনরাবৃত্তি করার সময় একটি এন্ট্রি সরান


এই টিউটোরিয়ালটি আলোচনা করবে কিভাবে হ্যাশম্যাপ থেকে একটি এন্ট্রি মুছে ফেলা যায় কী ব্যবহার করে এটির মধ্য দিয়ে যাওয়ার সময়। উদাহরণস্বরূপ,

Input: HashMap: { 1: “Tutorials”,
                  2: “Tutorials”,
                  3: “Point” }, key=1

Output: HashMap: { 2: “Tutorials”,
                   3: “Point” }.

Explanation: The first element is removed using key ‘1’.

Input: HashMap: { 1: “God”,
                  2: “is”,
                  3: “Great” }, key=2

Output: HashMap: { 1: “God”,
                   3: “Great” }.

সমাধান খোঁজার পদ্ধতি

C++ এ, আমরা .erase() ফাংশনে কী-এর নাম ব্যবহার করে কী ব্যবহার করে এন্ট্রি মুছে ফেলতে পারি। কিন্তু এখানে, এটির উপর পুনরাবৃত্তি করার সময় আমাদের এটি অপসারণ করতে হবে, তাই আমাদের একটি পুনরাবৃত্তিকারীও প্রয়োজন৷

এখানে আমরা হ্যাশম্যাপের মাধ্যমে পুনরাবৃত্তি করব এবং প্রতিটি কী সরানো হয়েছে কিনা তা পরীক্ষা করব এবং কী মিললে এন্ট্রিটি সরিয়ে ফেলব।

উদাহরণ

উপরের পদ্ধতির জন্য C++ কোড

পুনরাবৃত্তি ছাড়াই

নিচে HashMap এ পুনরাবৃত্তি না করে উপাদানগুলি সরানোর জন্য কোড রয়েছে৷

#include<iostream>
#include<map> // for map operations
using namespace std;
int main(){  
    // Creating HashMap.
    map< int, string > mp;
    // Inserting key-value pair in Hashmap.
    mp[1]="Tutorials";
    mp[2]="Tutorials";
    mp[3]="Point";
    int key = 2;
    // Creating iterator.
    map<int, string>::iterator it ;
    // Printing the initial Hashmap.
    cout<< "HashMap before Deletion:\n";
    for (it = mp.begin(); it!=mp.end(); ++it)
        cout << it->first << "->" << it->second << endl;
    mp.erase(key);
    // Printing Hashmap after deletion.
    cout<< "HashMap After Deletion:\n";
    for (it = mp.begin(); it!=mp.end(); ++it)
        cout << it->first << "->" << it->second << endl;
    return 0;
}

আউটপুট

HashMap before Deletion:
1->Tutorials
2->Tutorials
3->Point

HashMap After Deletion:
1->Tutorials
3->Point

উদাহরণ

হ্যাশম্যাপের উপর পুনরাবৃত্তি করার সময় উপাদান সরান

#include<iostream>
#include<map> // for map operations
using namespace std;
int main(){  
    // Creating HashMap.
    map< int, string > mp;
    // Inserting key-value pair in Hashmap.
    mp[1]="Tutorials";
    mp[2]="Tutorials";
    mp[3]="Point";
    int key = 2;
    // Creating iterator.
    map<int, string>::iterator it ;
    // Printing the initial Hashmap.
    cout<< "HashMap before Deletion:\n";
    for (it = mp.begin(); it!=mp.end(); ++it)
        cout << it->first << "->" << it->second << endl;
        // Iterating over HashMap.
    for (it = mp.begin(); it!=mp.end(); ++it){
        int a=it->first;
        // Checking iterator key with required key.
        if(a==key){
            // erasing Element.
            mp.erase(it);
        }
    }
    // Printing Hashmap after deletion.
    cout<< "HashMap After Deletion:\n";
    for (it = mp.begin(); it!=mp.end(); ++it)
        cout << it->first << "->" << it->second << endl;
    return 0;
}

আউটপুট

HashMap before Deletion:
1->Tutorials
2->Tutorials
3->Point

HashMap After Deletion:
1->Tutorials
3->Point

উপসংহার

এই টিউটোরিয়ালে, আমরা আলোচনা করেছি কিভাবে HashMap থেকে একটি এন্ট্রি অপসারণ করা যায়৷ আমরা একটি এন্ট্রি অপসারণের দুটি উপায় নিয়ে আলোচনা করেছি যা এটির উপর পুনরাবৃত্তি করছে এবং এটির উপর পুনরাবৃত্তি না করে৷ আমরা এই সমস্যার জন্য C++ প্রোগ্রাম নিয়েও আলোচনা করেছি যা আমরা সি, জাভা, পাইথন ইত্যাদি প্রোগ্রামিং ভাষার সাথে করতে পারি। আমরা আশা করি এই টিউটোরিয়ালটি আপনার কাজে লাগবে।


  1. C++ ব্যবহার করে একটি অ্যারে থেকে লিডিং জিরো সরান

  2. C++ ব্যবহার করে লিঙ্ক করা তালিকার শেষ নোডটি সরান

  3. C++ ব্যবহার করে একটি স্ট্রিং থেকে একটি প্রদত্ত শব্দ সরান

  4. C++ সারি ব্যবহার করে বিএসটি-তে একটি পথ বিপরীত করুন