C++:队列的类实现

16 篇文章 1 订阅

/*设计一个队列类,具有建立、清空、判断长度、
插入、删除、排序、查找、逆序、分类(比如奇偶分类)
统计(如偶数的个数)等功能。*/
#include<iostream>
#include<string>
#include<conio.h>
using namespace std;
template <class T>
class Queue
{
	T element[100];
public:
	Queue(){};
	void Return0()
	{
		int i;
		for(i=0;i<100;i++)
			element[i]=-858993460;
	}
	void Build(){}
	void Clean(){}
	void Length(){}
	void In()
	{
		int i;
		cout<<"请输入你要建立的队列,输入符号结束"<<endl;
		for(i=0;i<100;i++)
		{	
			cin>>element[i];			
		}
	}
	void Rank()
	{
		int i,j;
		T t;
		for(i=0;i<99;i++)
			for(j=i+1;j<100;j++)
				if(element[i]>element[j])
				{
					t=element[i];
					element[i]=element[j];
					element[j]=t;
				}
	void Delete(){}
	void search(){}
	void Rerank()
	{
		int i,j;
		T t;
		for(i=0;i<99;i++)
			for(j=i+1;j<100;j++)
				if(element[i]<element[j])
				{
					t=element[i];
					element[i]=element[j];
					element[j]=t;
				}
	}
	void Kind(){}
	void Count(){}
	}
	void Out()
	{
		if(element[0]==-858993460)
			cout<<"该队列无元素"<<endl;
		int i;
		for(i=0;i<100;i++)
		{
			if(element[i]==-858993460)
				break;
			cout<<element[i]<<" ";
		}
		cout<<endl;
	}
};
void menu(Queue<int> a)
{/*设计一个队列类,具有建立、清空、判断长度、
插入、删除、排序、查找、逆序、分类(比如奇偶分类)
统计(如偶数的个数)等功能。*/
	cout<<"队列管理系统"<<endl<<endl;
	cout<<"1.  建立队列"<<endl<<endl;
	cout<<"2.  清空队列"<<endl<<endl;
	cout<<"3.  判断长度"<<endl<<endl;
	cout<<"4.  插入元素"<<endl<<endl;
	cout<<"5.  删除元素"<<endl<<endl;
	cout<<"6.  队列排序"<<endl<<endl;
	cout<<"7.  逆序排列"<<endl<<endl;
	cout<<"8.  自动分类"<<endl<<endl;
	cout<<"9.  元素统计"<<endl<<endl;
	cout<<"10. 查找元素"<<endl<<endl;
	char press;
loopmenu:
	press=getch();
	switch(press)
	{	case  '1':
			a.Build();
			break;
		case  '2':
			a.Clean();
			break;
		case  '3':
			a.Length();
			break;
		case  '4':
			a.In();
			break;
		case  '5':
			a.Delete();
			break;
		case  '6':
			a.Rank();
			break;
		case  '7':
			a.Rerank();
			break;
		case  '8':
			a.Kind();
			break;
		case  '9':
			a.Count();
			break;
		case '10':
			a.Search();
			break;
		default:
			{
				cout<<"请按正确的按键"<<endl;
				goto loopmenu;
			}
	}
}
void main()
{
	Queue<int> a;
	menu(Queue<int> a);	
}
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值