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

C++-এ পেয়ারের unordered_map তৈরি করা


এই টিউটোরিয়ালে আমরা C++-এ পেয়ারের unordered_map কীভাবে তৈরি করতে হয় সেটা নিয়ে আলোচনা করব।

Unordered maps ডিফল্টভাবে পেয়ারের জন্য হ্যাশ ফাংশন ধারণ করে না। যদি আমরা কোনো নির্দিষ্ট পেয়ারের জন্য হ্যাশ ভ্যালু চাই, তবে সেটি এক্সপ্লিসিটলি পাস করতে হবে।

উদাহরণ

#include <bits/stdc++.h> using namespace std; //to hash any given pair struct hash_pair {    template <class T1, class T2>    size_t operator()(const pair<T1, T2>& p) const{       auto hash1 = hash<T1>{}(p.first);       auto hash2 = hash<T2>{}(p.second);       return hash1 ^ hash2;    } }; int main(){    //explicitly sending hash function    unordered_map<pair<int, int>, bool, hash_pair> um;    //creating some pairs to be used as keys    pair<int, int> p1(1000, 2000);    pair<int, int> p2(2000, 3000);    pair<int, int> p3(2005, 3005);    um[p1] = true;    um[p2] = false;    um[p3] = true;    cout << "Contents of the unordered_map : \n";    for (auto p : um)       cout << "[" << (p.first).first << ", "<< (p.first).second << "] ==> " << p.second << "\n";    return 0; }

আউটপুট

Contents of the unordered_map : [1000, 2000] ==> 1 [2005, 3005] ==> 1 [2000, 3000] ==> 0

  1. C++-এ অ্যারেতে সর্বোচ্চ যোগফল দিয়ে জোড়া গণনা

  2. C++-এ বিটওয়াইজ OR অড্ড হয় এমন জোড়ার সংখ্যা বের করা

  3. C++-এ যোগফল ২-এর ঘাত হয় এমন জোড়ার সংখ্যা বের করা

  4. OpenCV-এ C++ ব্যবহার করে বাইনারি ইমেজ তৈরি করা