实现循环队列的基本操作(初始化、判断队空、判断队满、入队、出队)
展开全部
/*
实现循环队列的基本操作(初始化、判断队空、判断队满、入队、出队)
*/
//在javascript中,可以使用数组来实现一个队列
function stack(){
this.datastore = new Array(); //初始化
this.isEmpty = isEmpty; //判断队空
this.isFull = isFull; //判断队满
this.add = add; //入队
this.remove = remove; //出队
this.count = 0;
function isEmpty(){
if(this.count == 0) return true;
return false;
}
function isFull(){
if(!isEmpty()) return true;
return false;
}
function add(value){
alert(this.count);
this.datastore[this.count ++] = value;
}
function remove(){
if(this.count <= 0) {
this.count = 0;
alert('当前队列为空,无法删除!');
return;
}
delete this.datastore[-- this.count ];
}
}
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
展开全部
template<class Telem>
class SqQueue
{
Telem*elem;
int front,rear;
int len;
public:
SqQueue(int maxsz=100):len(maxsz)
{
elem=new Telem[len];
front=rear=0;
};
~SqQueue(){ delete[]elem;};
void clear(){front=rear=0;};
int leng(){return(rear-front+len)%len;};
bool empt(){return(front==rear);};
bool full(){return((rear+1)%len==front);};
bool enque(Telem&el);
Telem dlque();
Telem getf();
};
template<class Telem>bool SqQueue<Telem>::enque(Telem&el)
{
if((rear+1)%len==front)return(false);
else{
elem[rear]=el;
rear=(rear+1)%len;
return(true);
}
};
template<class Telem>Telem SqQueue<Telem>::dlque()
{
Telem el;
if(rear==front)return NULL;
else{
el=elem[front];
front=(front+1)%len;
return(el);
}
};
template<class Telem>Telem SqQueue<Telem>::getf()
{
if(rear==front)return NULL;
else return(elem[front]);
};
class SqQueue
{
Telem*elem;
int front,rear;
int len;
public:
SqQueue(int maxsz=100):len(maxsz)
{
elem=new Telem[len];
front=rear=0;
};
~SqQueue(){ delete[]elem;};
void clear(){front=rear=0;};
int leng(){return(rear-front+len)%len;};
bool empt(){return(front==rear);};
bool full(){return((rear+1)%len==front);};
bool enque(Telem&el);
Telem dlque();
Telem getf();
};
template<class Telem>bool SqQueue<Telem>::enque(Telem&el)
{
if((rear+1)%len==front)return(false);
else{
elem[rear]=el;
rear=(rear+1)%len;
return(true);
}
};
template<class Telem>Telem SqQueue<Telem>::dlque()
{
Telem el;
if(rear==front)return NULL;
else{
el=elem[front];
front=(front+1)%len;
return(el);
}
};
template<class Telem>Telem SqQueue<Telem>::getf()
{
if(rear==front)return NULL;
else return(elem[front]);
};
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询