1、队列的链式存储队列的链式存储结构:填写图片摘要(选填)存储结构:链式存储队列类:填写图片摘要(选填)函数:templateMyQueue:MyQueue()head = new node;rear = new node;length = 0;templateMyQueue:MyQueue()delete head;delete rear;templatevoid MyQueue:MakeNull()head-next = NULL;head = rear; /表头是第一个节点,也是第二个节点templatebool MyQueue:IsEmpty()if (head = rear)return
2、 true;else return false;templateint MyQueue:QueueLength()return length;templatevoid MyQueue:EnQueue(T t)rear-next = new node;rear = rear-next;rear-data = t;rear-next = NULL;length+;templatevoid MyQueue:DeQueue()node *temp = new node;if (IsEmpty() cout Queue is empty ! next;head-next = temp-next;dele
3、te temp;length-;if (head-next = NULL)rear = head;templatevoid MyQueue:Displayq()node *p = head;while (p&p-next)p = p-next;cout data ;cout next = NULL;head = rear; /表头是第一个节点,也是第二个节点templatebool MyQueue:IsEmpty()if (head = rear)return true;else return false;templateint MyQueue:QueueLength()return leng
4、th;templatevoid MyQueue:EnQueue(T t)rear-next = new node;rear = rear-next;rear-data = t;rear-next = NULL;length+;templatevoid MyQueue:DeQueue()node *temp = new node;if (IsEmpty() cout Queue is empty ! next;head-next = temp-next;delete temp;length-;if (head-next = NULL)rear = head;templatevoid MyQueu
5、e:Displayq()node *p = head;while (p&p-next)p = p-next;cout data ;cout endl;int main()MyQueue myqueue;myqueue.MakeNull();int i;for (int i = 0; i30; i+)myqueue.EnQueue(i);myqueue.Displayq();cout 当前队列的长度: myqueue.QueueLength() endl;cout i;myqueue.EnQueue(i);myqueue.Displayq();cout 当前队列的长度: myqueue.QueueLength() endl;cout 出队:;myqueue.DeQueue();myqueue.Displayq();cout 当前队列的长度: myqueue.QueueLength() endl;system(pause);return 0;实现简单,仅供参考。欢迎访问我的博客:
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2