Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

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++ में बिटवाइज OR विषम संख्या होने वाले जोड़ों की संख्या

    एक सरणी दी गई है, हमें उन जोड़ों की संख्या ढूंढनी है जिनका बिटवाइज OR एक विषम संख्या है। आइए उदाहरण देखते हैं।इनपुटarr = [1, 2]आउटपुट1केवल एक जोड़ी है जिसका बिटवाइज OR विषम संख्या है। और वह जोड़ी है (1, 2)।एल्गोरिदमसरणी को यादृच्छिक संख्याओं से आरंभ करें।काउंट को 0 पर आरंभ करें।सरणी के जोड़े प्राप्त

  1. - C++ में योग 2 की घात होने वाले जोड़ों की संख्या

    एक सरणी दी गई है, हमें उन जोड़ों की संख्या ढूंढनी है जिनका योग 2 की घात है। आइए उदाहरण देखते हैं।इनपुटarr = [1, 2, 3]आउटपुट1केवल एक जोड़ी है जिसका योग 2 की घात है। और वह जोड़ी है (1, 3)।एल्गोरिदमसरणी को यादृच्छिक संख्याओं से आरंभ करें।काउंट को 0 पर आरंभ करें।सरणी के सभी जोड़े प्राप्त करने के लिए दो

  1. OpenCV में C++ का उपयोग करके बाइनरी इमेज कैसे बनाएं? OpenCV में C++ का उपयोग करके बाइनरी इमेज कैसे बनाएं?

    बाइनरी इमेज केवल एक डिजिटल इमेज है जो दो रंगों, काले और सफेद को दर्शाती है। इमेज प्रोसेसिंग के दृष्टिकोण से, बाइनरी इमेज में दो संभावित मानों वाले पिक्सेल होते हैं - शून्य और एक। जब पिक्सेल का मान 0 होता है, तो यह शुद्ध काले रंग को दर्शाता है। जब पिक्सेल का मान 1 होता है, तो इसका मतलब शुद्ध सफेद रंग