顺序表加损失一个储存位 -》实现队列

int cnt{  };
typedef struct ty* pos;
struct ty {
	int* a;
	int maxsize;
	int f, nex;
};
void cre(pos& l, int s)
{
	l = new ty;
	l->a = new int[s];
	l->maxsize = s;
	l->f = l -> nex = 0;
}
bool ept(pos l)
{
	return (l->f == l->nex);
}
bool full(pos l)
{
	return (l->f == (l->nex + 1) % l->maxsize);
}
void add(pos l, int aa)
{
	if ( full(l) )
	{
		cout << "full" << endl;
		return;
	}
	l->nex = (l->nex + 1) % l->maxsize;
	l->a[l->nex] = aa;
}
void del(pos l)
{
	if ( ept(l) ) {
		cout << "    fas" << endl;
		return;
	}
	l->f = (l->f + 1) % l->maxsize;
	cout << l->a[l->f] << endl;
}

int main(int args, char** argv)
{
	/*ios::sync_with_stdio(false);
	cin.tie(nullptr);
	cin.tie(nullptr);*/
	pos l;
	cre(l, 5);
	add(l, 14);
	add(l, 23);
	add(l, 230);
	add(l, 213);
	add(l, 273);
	add(l, 236);
	del(l);
	del(l);
	del(l);
	del(l);
	del(l);
	del(l);
	return 0;
}
全部评论

相关推荐

HNU_fsq:建议直接出国,这简历太6了。自愧不如
点赞 评论 收藏
分享
11-14 16:13
已编辑
重庆科技大学 测试工程师
Amazarashi66:不进帖子我都知道🐮❤️网什么含金量
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务