建立一个链队列,实现队列的入队和出队操作。

xiaoxiao2021-02-28  36

 #ifndef linkqueue_H   #define linkqueue_H   struct node   {       int data;       node *next;   };   class linkqueue   {   private:       node *front,*rear;   public:       linkqueue();       ~linkqueue();       void enqueue(int x);       int dequeue();       int getqueue();       int empty();   };   #endif   子函数:   #include"linkqueue.h"   #include<iostream>   using namespace std;   linkqueue::linkqueue()   {       node *s;       s=new node;       s->next=NULL;       front=rear=s;   }      linkqueue::~linkqueue()   {       front=rear=NULL;   }      void linkqueue::enqueue(int x)   {       node *s=new node;       s->data=x;       s->next=NULL;       rear->next=s;       rear=s;//将结点s插入到队尾   }      int linkqueue::dequeue()   {       int x;       node *p=new node;       p=front->next;       x=p->data;       front->next=p->next;       return 0;   }      int linkqueue::getqueue()   {       int x;       node *q=new node;       q=front->next;       x=q->data;       return x;   }      int linkqueue::empty()   {       if(front==rear)           return 1;       else           return 0;   }   主函数:   #include<iostream>   using namespace std;   #include"linkqueue.h"   void main()   {       linkqueue q;       if(q.empty())           cout<<"队列为空"<<endl;       else           cout<<"队列非空"<<endl;       cout<<"元素10和15执行入队操作"<<endl;       q.enqueue(10);       q.enqueue(15);       cout<<"查看队头元素:"<<q.getqueue()<<endl;       cout<<"执行出队操作"<<endl;       q.dequeue();       cout<<"查看队头元素:"<<q.getqueue()<<endl;       if(q.empty())           cout<<"队列为空"<<endl;       else           cout<<"队列非空"<<endl;   }  
转载请注明原文地址: https://www.6miu.com/read-2613375.html

最新回复(0)