"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > C++ में कस्टम तुलनित्र के साथ प्राथमिकता कतार कैसे घोषित करें?

C++ में कस्टम तुलनित्र के साथ प्राथमिकता कतार कैसे घोषित करें?

2024-11-15 को प्रकाशित
ब्राउज़ करें:722

How to Declare a Priority Queue with a Custom Comparator in C  ?

सी में एक कस्टम तुलनित्र के साथ एक प्राथमिकता कतार की घोषणा करना

सी में, जब एक प्राथमिकता कतार घोषित करने का प्रयास किया जाता है जो एक कस्टम तुलनित्र का उपयोग करता है, तुलनित्र को सही ढंग से परिभाषित करना आवश्यक है। त्रुटि "तुलना करें" एक प्रकार का नाम नहीं है तब उत्पन्न होती है जब तुलनित्र को एक वर्ग या स्टैंडअलोन फ़ंक्शन के रूप में घोषित नहीं किया जाता है।

इसे हल करने के लिए, आप तुलनित्र के लिए एक वर्ग को परिभाषित कर सकते हैं और ऑपरेटर() को ओवरलोड कर सकते हैं यह, जैसा कि निम्नलिखित उदाहरण में दिखाया गया है:

class Compare
{
public:
    bool operator() (Node a, Node b)
    {
        // Comparator logic
    }
};

वैकल्पिक रूप से, आप तुलनित्र को परिभाषित करने के लिए एक std::फ़ंक्शन का उपयोग कर सकते हैं, जैसा कि नीचे दिखाया गया है:

bool Compare(Node a, Node b)
{
    // Comparator logic
}

std::priority_queue, std::function> pq(Compare);

इन तरीकों का पालन करके, आप प्रभावी ढंग से प्राथमिकता घोषित कर सकते हैं सी में एक कस्टम तुलनित्र के साथ कतार।

विज्ञप्ति वक्तव्य यह लेख यहां पुनर्मुद्रित है: 1729743201 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.कॉम से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3