2、设计要求:请任选一种存储方式表示队列,用C\C++语言实现队列的基本操作:
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/11 04:11:13
2、设计要求:请任选一种存储方式表示队列,用C\C++语言实现队列的基本操作:
包含下列内容:
InitQueue( ):构造一个空队列
DestroyQueue( ):销毁队列
ClearQueue( ):将队列清空
QueueEmpty( ):判定队列是否为空队列
QueueLength( ):返回Q的元素个数
GetHead( ):获取Q的队头元素
EnQueue( ):向队列Q中插入新元素
DeQueue( ):删除队列Q中的元素
QueueTraverse( ):依次读取队列Q中的每个元素
包含下列内容:
InitQueue( ):构造一个空队列
DestroyQueue( ):销毁队列
ClearQueue( ):将队列清空
QueueEmpty( ):判定队列是否为空队列
QueueLength( ):返回Q的元素个数
GetHead( ):获取Q的队头元素
EnQueue( ):向队列Q中插入新元素
DeQueue( ):删除队列Q中的元素
QueueTraverse( ):依次读取队列Q中的每个元素
悬赏都没有,找了过去自己写好的,将就用吧.
#include
using namespace std;
template
class Queue
{
public:
void clear();
bool enQueue(const T item);
bool deQueue(T& item);
bool getFront(T& item);
bool isEmpty();
bool isFull();
};
template
class ArrayQueue:public Queue
{
private:
int mSize;
int front;
int rear;
T *qu;
public:
ArrayQueue(int size)
{
mSize=size+1;
qu=new T[mSize];
front=rear=0;
}
ArrayQueue()
{
delete []qu;
}
void clear()
{
front=rear;
}
bool enQueue(const T item)
{
if(((rear+1)%mSize)==front)
{
cout
#include
using namespace std;
template
class Queue
{
public:
void clear();
bool enQueue(const T item);
bool deQueue(T& item);
bool getFront(T& item);
bool isEmpty();
bool isFull();
};
template
class ArrayQueue:public Queue
{
private:
int mSize;
int front;
int rear;
T *qu;
public:
ArrayQueue(int size)
{
mSize=size+1;
qu=new T[mSize];
front=rear=0;
}
ArrayQueue()
{
delete []qu;
}
void clear()
{
front=rear;
}
bool enQueue(const T item)
{
if(((rear+1)%mSize)==front)
{
cout
2、设计要求:请任选一种存储方式表示队列,用C\C++语言实现队列的基本操作:
循环队列是队列的一种顺序存储结构吗
数据结构(C语言编写完整可运行程序):设有队列Q、栈S,设计算法利用栈S将队列Q中的元素逆向输出
具有记忆功能的数据结构:A顺序表 B队列 C循环队列 D栈
求循环队列中元素个数使用一个元素个数为100的数组存储循环队列,如果采取少用一个元素空间来区别循环队列空和满,约定队列首
C语言设计实现抽象数据类型"有理数"基本操作包括有理数的加法,减法,乘法,除法,以及求有理数的分子,分
C语言中循环队列的队满和队空的判断条件各是什么?有什么不同?
数据结构中若顺序存储的循环队列的QueueMaxSiz=n,则队列最多可存储几个元素?
数据结构有难题1、下列数据中,( )是非线性的数据结构.A、线 B、队列 C、串 D、图2、线性表若采用链式存储结构时,
用C语言设计程序实现多项式相乘的问题,
C语言:为什么线性结构的顺序存储是一种随机存取存储结构?
设计一个数据结构(C语言版),实现多项式的操作