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

सी ++ प्रोग्राम ऐरे का उपयोग करके कतार को लागू करने के लिए

एक कतार एक सार डेटा संरचना है जिसमें तत्वों का संग्रह होता है। कतार लागू करता हैफीफो तंत्र यानी पहले डाला गया तत्व भी पहले हटा दिया जाता है। दूसरे शब्दों में, हाल ही में जोड़े गए कम से कम तत्व को कतार में सबसे पहले हटा दिया जाता है।

एक प्रोग्राम जो एक सरणी का उपयोग करके कतार को लागू करता है, वह इस प्रकार दिया गया है -

उदाहरण

#include <iostream>
using namespace std;
int queue[100], n = 100, front = - 1, rear = - 1;
void Insert() {
   int val;
   if (rear == n - 1)
   cout<<"Queue Overflow"<<endl;
   else {
      if (front == - 1)
      front = 0;
      cout<<"Insert the element in queue : "<<endl;
      cin>>val;
      rear++;
      queue[rear] = val;
   }
}
void Delete() {
   if (front == - 1 || front > rear) {
      cout<<"Queue Underflow ";
      return ;
   } else {
      cout<<"Element deleted from queue is : "<< queue[front] <<endl;
      front++;;
   }
}
void Display() {
   if (front == - 1)
   cout<<"Queue is empty"<<endl;
   else {
      cout<<"Queue elements are : ";
      for (int i = front; i <= rear; i++)
      cout<<queue[i]<<" ";
         cout<<endl;
   }
}
int main() {
   int ch;
   cout<<"1) Insert element to queue"<<endl;
   cout<<"2) Delete element from queue"<<endl;
   cout<<"3) Display all the elements of queue"<<endl;
   cout<<"4) Exit"<<endl;
   do {
      cout<<"Enter your choice : "<<endl;
      cin>>ch;
      switch (ch) {
         case 1: Insert();
         break;
         case 2: Delete();
         break;
         case 3: Display();
         break;
         case 4: cout<<"Exit"<<endl;
         break;
         default: cout<<"Invalid choice"<<endl;
      }
   } while(ch!=4);
   return 0;
}

उपरोक्त कार्यक्रम का आउटपुट इस प्रकार है

1) Insert element to queue
2) Delete element from queue
3) Display all the elements of queue
4) Exit
Enter your choice : 1
Insert the element in queue : 4
Enter your choice : 1
Insert the element in queue : 3
Enter your choice : 1
Insert the element in queue : 5
Enter your choice : 2
Element deleted from queue is : 4
Enter your choice : 3
Queue elements are : 3 5
Enter your choice : 7
Invalid choice
Enter your choice : 4
Exit

उपरोक्त कार्यक्रम में, फ़ंक्शन सम्मिलित करें () कतार में एक तत्व सम्मिलित करता है। यदि पिछला भाग n-1 के बराबर है, तो कतार भरी हुई है और अतिप्रवाह प्रदर्शित होता है। यदि सामने -1 है, तो इसे 1 से बढ़ाया जाता है। फिर पीछे की ओर 1 से वृद्धि की जाती है और तत्व को पीछे के सूचकांक में डाला जाता है। यह नीचे दिखाया गया है -

void Insert() {
   int val;
   if (rear == n - 1)
   cout<<"Queue Overflow"<<endl;
   else {
      if (front == - 1)
      front = 0;
      cout<<"Insert the element in queue : "<<endl;
      cin>>val;
      rear++;
      queue[rear] = val;
   }
}

फ़ंक्शन डिलीट () में, यदि कतार में कोई तत्व नहीं हैं तो यह अंडरफ्लो स्थिति है। अन्यथा सामने वाला तत्व प्रदर्शित होता है और सामने वाला एक से बढ़ जाता है। यह नीचे दिखाया गया है -

void Delete() {
   if (front == - 1 || front > rear) {
      cout<<"Queue Underflow ";
      return ;
   }
   else {
      cout<<"Element deleted from queue is : "<< queue[front] <<endl;
      front++;;
   }
}

फ़ंक्शन डिस्प्ले () में, यदि सामने -1 है तो कतार खाली है। अन्यथा सभी कतार तत्वों को लूप के लिए उपयोग करके प्रदर्शित किया जाता है। यह नीचे दिखाया गया है -

void Display() {
   if (front == - 1)
   cout<<"Queue is empty"<<endl;
   else {
      cout<<"Queue elements are : ";
      for (int i = front; i <= rear; i++)
      cout<<queue[i]<<" ";
      cout<<endl;
   }
}

फ़ंक्शन मुख्य () उपयोगकर्ता को एक विकल्प प्रदान करता है यदि वे कतार सम्मिलित करना, हटाना या प्रदर्शित करना चाहते हैं। उपयोगकर्ता की प्रतिक्रिया के अनुसार, उपयुक्त फ़ंक्शन को स्विच का उपयोग करके कहा जाता है। यदि उपयोगकर्ता एक अमान्य प्रतिक्रिया दर्ज करता है, तो वह मुद्रित होता है। इसके लिए कोड स्निपेट नीचे दिया गया है -

int main() {
   int ch;
   cout<<"1) Insert element to queue"<<endl;
   cout<<"2) Delete element from queue"<<endl;
   cout<<"3) Display all the elements of queue"<<endl;
   cout<<"4) Exit"<<endl;
   do {
      cout<<"Enter your choice : "<<endl;
      cin>>ch;
      switch (ch) {
         case 1: Insert();
         break;
         case 2: Delete();
         break;
         case 3: Display();
         break;
         case 4: cout<<"Exit"<<endl;
         break;
         default: cout<<"Invalid choice"<<endl;
      }
   } while(ch!=4);
   return 0;
}

  1. सी ++ प्रोग्राम लिंक्ड लिस्ट का उपयोग करके कतार को लागू करने के लिए

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

  1. सी ++ प्रोग्राम सरणी का उपयोग करके स्टैक को लागू करने के लिए

    स्टैक एक सार डेटा संरचना है जिसमें तत्वों का संग्रह होता है। स्टैक LIFO तंत्र को लागू करता है यानी अंत में धकेले जाने वाले तत्व को पहले पॉप आउट किया जाता है। स्टैक में कुछ सिद्धांत संचालन हैं - पुश - यह स्टैक के शीर्ष पर डेटा मान जोड़ता है। पॉप - यह स्टैक के शीर्ष पर डेटा मान को हटा देता है

  1. सी ++ प्रोग्राम सॉर्ट किए गए ऐरे को लागू करने के लिए

    एक क्रमबद्ध सरणी एक सरणी है जिसमें प्रत्येक तत्व को किसी क्रम में क्रमबद्ध किया जाता है जैसे संख्यात्मक, वर्णानुक्रम आदि। संख्यात्मक सरणी को सॉर्ट करने के लिए कई एल्गोरिदम हैं जैसे बबल सॉर्ट, इंसर्शन सॉर्ट, सेलेक्शन सॉर्ट, मर्ज सॉर्ट, क्विक सॉर्ट, ढेर सॉर्ट आदि। चयन सॉर्ट का उपयोग करके सरणी को सॉर्ट