数据结构-队列(用尾插法链表实现)

h:

namespace queue
{
	class queuelist {
	public:
		int linkinit(queuelist *);
		int linkincrease(queuelist *);
		int linkremove(queuelist *);
		int watch(queuelist*);		
	private:
		char data;
		queuelist *next;
		queuelist *linkfont;
		queuelist *linkrear;
		int doufont;
		int doureat;
		int len;
	};
}

cpp:

using namespace queue;
int queuelist::linkinit(queuelist *l)
{
	l->next = NULL;
	l->linkfont = l;
	l->linkrear = l;
	l->len = -1;
	cout << "队列初始化成功" << endl;
	return 1;
};
int queuelist::linkincrease(queuelist *l)//链表的尾插
{
	queuelist *q, *r; r = l;
	cout << "输入进队元素" << endl;
	char x = 0;
	while (x != '\n')
	{
		q=new queuelist;
		x = getchar();
		q->data = x;
		r->next = q;
		r = q;
		r->linkrear = r;
		l->len++;
	}
	r->next = NULL;
	watch(l);
	return 1;
}
int queuelist::linkremove(queuelist*l)
{
	if (l->len==0)
	{
		cout<<"空队!"<<endl;
		return 0;
}
	cout << "输入出队数量" << endl;
	int x; cin >> x;
	if (x > l->len)
	{
		cout << "数量不对!" << endl;
		return 0;
	}
	queuelist *r, *p = l; r = p->next;
	for (int i = 0; i < x; i++)
	{
		r = p->next;
		p->next = r->next;
		l->len--;
		delete r;
	}
	watch(l);
}
int queuelist::watch(queuelist *l)
{
	cout << "结果是" << endl;
	if (sizeof(l) == 4)
	{
		while (l->next != NULL)
		{
			l = l->next;
			cout << l->data;

		}
		return 1;
	}	
}

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值