数据结构_链队列
来源:互联网 发布:淘宝宝贝上架图片尺寸 编辑:程序博客网 时间:2024/05/16 10:34
//LinkQueue.h#ifndef LinkQueue_H#define LinkQueue_H#define NULL 0struct Node{int data;Node* next;};class LinkQueue{public:LinkQueue(); //构造~LinkQueue(); //析构void Enqueue(int x);// 插入int DeQueue(); // 删除队首int GetQueue(); //取队首元素int Empty(); //判空操作private:Node* front; //队首指针Node* rear; //队尾指针};#endif;//LinkQueue.cpp#include "LinkQueue.h"LinkQueue::LinkQueue(){Node* s = NULL;s = new Node;s->next = NULL;front = rear = s;}LinkQueue::~LinkQueue(){Node* p = NULL;while(front!=NULL){p = front->next;delete front;front = p;}}void LinkQueue::Enqueue(int x){Node* s = NULL;s = new Node;s->data = x;s->next = NULL;rear->next = s; rear = s;}int LinkQueue::DeQueue(){Node* p = NULL;int x;if(rear == front) throw "下溢";p = front->next;x = p->data;front->next = p->next;if(p->next == NULL) rear = front;delete p;return x; }int LinkQueue::GetQueue(){if(front!=rear) return front->next->data;else return -(1<<30); //错误标记}int LinkQueue::Empty(){if(front == rear) return 1;return 0;}//LinkQueue_main.cpp#include<iostream>using namespace std;#include "LinkQueue.h"int main(){LinkQueue Q;if(Q.Empty()) cout << "队列为空" << endl;else cout << "队列非空" << endl;cout << "元素10和15执行入队操作:" << endl;try{Q.Enqueue(10);Q.Enqueue(15);}catch(char* wrong){cout << wrong << endl;}cout << "查看队首元素" << endl;cout << Q.GetQueue() << endl;cout << "执行出队操作" << endl;try{Q.DeQueue();}catch(char* wrong) {cout << wrong << endl;}cout << "查看队首元素" << endl;cout << Q.GetQueue() << endl;return 0;}
0 0
- 数据结构_链队列
- 数据结构_线性表_顺序队列_循环队列_链队列
- 数据结构_链队列相关操作
- 数据结构_链队列相关操作
- 数据结构_循环队列
- 13-数据结构_队列
- 数据结构_队列
- 数据结构_循环队列
- 数据结构_优先队列
- 数据结构_优先队列
- 数据结构_队列(queue)
- 数据结构_队列
- Python 数据结构_队列
- 数据结构_优先队列
- 【数据结构_队列_Queue_0965】循环队列
- 数据结构的C实现_链式队列
- 数据结构的C实现_循环队列
- 数据结构学习之_循环队列
- UITableView
- Linux开机启动(bootstrap) -转
- 农夫过河
- STM32寄存器列表 RCC时钟相关寄存器
- 经典_STM32_ADC多通道采样的例子
- 数据结构_链队列
- 社会趣谈之无良媒体篇:北京一男子与充气娃娃结婚
- spring解决中文乱码问题
- Hive UDAF开发详解
- 浅谈STM32的DMA模块的使用
- 华为oj 进制转换
- hihoCoder 1259 A Math Problem 数位dp
- TabWidget/TabHost的两种使用方法
- 在eclipse搭建python开发环境