प्राथमिकता कतार प्राथमिकता वाले तत्वों के संग्रह को संग्रहीत करने के लिए एक सार डेटा प्रकार है जो किसी तत्व को उनकी प्राथमिकताओं के आधार पर सम्मिलित करने और हटाने का समर्थन करता है, अर्थात, पहली प्राथमिकता वाले तत्व को किसी भी समय हटाया जा सकता है। प्राथमिकता कतार तत्वों को उनके स्थान जैसे स्टैक, कतार, सूची, आदि के संबंध में रैखिक फैशन में संग्रहीत नहीं करती है। प्राथमिकता कतार ADT (सार डेटा प्रकार) तत्वों को उनकी प्राथमिकताओं के आधार पर संग्रहीत करता है।
प्राथमिकता कतार निम्नलिखित कार्यों का समर्थन करती है -
आकार () - इसका उपयोग प्राथमिकता कतार के आकार की गणना करने के लिए किया जाता है क्योंकि यह इसमें तत्वों की संख्या लौटाता है।
खाली() - यदि प्राथमिकता कतार खाली है और गलत है तो यह सही है अन्यथा
सम्मिलित करें (तत्व) − नए एलीमेंट को प्रायोरिटी क्यू में डालने के लिए इस्तेमाल किया जाता है
न्यूनतम () - यह तत्व को सबसे छोटे संबद्ध कुंजी मान के साथ लौटाता है और प्राथमिकता कतार खाली होने पर त्रुटि संदेश प्रदर्शित करता है।
निकालें न्यूनतम () - यह न्यूनतम () फ़ंक्शन द्वारा संदर्भित तत्व को हटा देता है।
नीचे एक तालिका दी गई है जो प्राथमिकता कतार पर संचालन के प्रभाव को दर्शाती है
Start Step 1-> Declare function to display the elements in a Priority Queue void display(priority_queue <int> Pq) declare and set priority_queue <int> que = Pq Loop While (!que.empty()) call que.top() call que.pop() End Step 2-> In main() Create object of priority_queue <int> Pq Call push() to insert element in a priority queue as Pq.push(1) Call display(Pq) Call to check the size of a priority queue Pq.size() Call to display the top element of a priority queue Pq.top() Call to remove the elements of a priority queue Pq.pop() Call display(Pq) Stop
उदाहरण
#include <iostream> #include <queue> using namespace std; void display(priority_queue <int> Pq) { priority_queue <int> que = Pq; while (!que.empty()) { cout << '\t' << que.top(); que.pop(); } //cout << '\n'; } int main () { priority_queue <int> Pq; Pq.push(1); Pq.push(3); Pq.push(5); Pq.push(7); Pq.push(9); cout << "The priority queue is : "; display(Pq); cout << "\nPrioriy queue size using size() : " << Pq.size(); cout << "\nFirst element of priority queue using top(): " << Pq.top(); cout << "\nremoving element using pop() : "; Pq.pop(); display(Pq); return 0; }
आउटपुट
The priority queue is : 9 7 5 3 1 Prioriy queue size using size() : 5 First element of priority queue using top(): 9 removing element using pop() : 7 5 3 1