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

सी ++ में संरचना या कक्षा के लिए एसटीएल प्राथमिकता कतार

एसटीएल प्राथमिकता कतार मैक्सहेप का कार्यान्वयन है।

यह संरचना के लिए STL प्राथमिकता कतार का C++ प्रोग्राम है।

एल्गोरिदम

Begin
   Define a structure of type student.
   Initialize variables in student structure.
   Define another structure of type comparemarks
   Overload the variables of student structure in comapremarks
   structure.
   Use priority queue with structure.
   Insert some elements in priority queue using student structure.
   While the queue is not empty do
      Print the elements.
End.

उदाहरण कोड

#include <iostream>
#include <queue>
using namespace std;
#define ROW 6
#define COL 3
struct student { //defining the student structure
   int roll,marks;
   student(int roll, int marks)
      : roll(roll), marks(marks)
   {
   }
};
struct comparemarks{ // defining the comparemarks structure
   bool operator()(student const& s1, student const& s2)
   //overloading the operators of the student structure
   {
      return s1.marks < s2.marks;
   }
};
int main()
{
   priority_queue<student, vector<student>, comparemarks> M;
   // using the priority queue. We have to use this type of syntax to use the priority queue.
   int a[ROW][COL] = {{15, 50}, {16, 60},
   {18,70}, {14, 80}, {12, 90}, {20, 100}};
   for (int i = 0; i < ROW; ++i) {
      M.push(student(a[i][0], a[i][1])); //inserting variables in the queue
   }
   cout<<"priority queue for structure ::"<<endl;
   while (!M.empty()) {
      student s = M.top();
      M.pop();
      cout << s.roll << " " << s.marks << "\n"; //printing the values
   }
   return 0;
}

आउटपुट

priority queue for structure ::
20 100
12 90
14 80
18 70
16 60
15 50

  1. सी ++ में डबल लिंक्ड सूची का उपयोग कर प्राथमिकता कतार

    हमें डेटा और प्राथमिकता एक पूर्णांक मान के रूप में दी जाती है और कार्य दी गई प्राथमिकता के अनुसार एक डबल लिंक्ड सूची बनाना और परिणाम प्रदर्शित करना है। Queue एक FIFO डेटा संरचना है जिसमें जो तत्व पहले डाला जाता है वह सबसे पहले निकाला जाता है। प्राथमिकता कतार एक प्रकार की कतार है जिसमें प्राथमिकता क

  1. सी++ प्रोग्राम फॉर प्रायोरिटी शेड्यूलिंग

    हमें n प्रक्रियाओं की संख्या दी गई है अर्थात P1, P2, P3, ……,Pn उनके संगत बर्स्ट समय और प्रत्येक प्रक्रिया से जुड़ी प्राथमिकताओं के साथ। कार्य प्राथमिकता सीपीयू शेड्यूलिंग एल्गोरिदम का उपयोग करके औसत प्रतीक्षा समय, औसत टर्नअराउंड समय और प्रक्रिया निष्पादन का क्रम खोजना है। प्रतीक्षा समय और टर्नअराउं

  1. C++ में प्रतिस्पर्धी कोडिंग के लिए BFS STL का उपयोग कर रहा है?

    चौड़ाई पहली खोज (बीएफएस) ट्रैवर्सल एक एल्गोरिदम है, जिसका उपयोग किसी दिए गए ग्राफ़ के सभी नोड्स पर जाने के लिए किया जाता है। इस ट्रैवर्सल एल्गोरिथम में एक नोड का चयन किया जाता है और फिर सभी आसन्न नोड्स को एक-एक करके देखा जाता है। आसन्न सभी शीर्षों को पूरा करने के बाद, यह एक और शीर्षों की जाँच करने क