22级数据结构大作业地铁订票系统c++

这篇具有很好参考价值的文章主要介绍了22级数据结构大作业地铁订票系统c++。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

内容需求:

22级数据结构大作业地铁订票系统c++,数据结构,课程设计,c++

 参考图中郑州地铁一号线部分线路图设计一个地铁订票系统。

【问题描述】 订票管理系统应实现地铁站的插入、删除、修改、查询、排序以及票价查询等工作,请设计一个计算 机系统,实现上述功能。

【基本要求】

(1)使用合适的数据结构存储地铁站数据并将示意图中的数据存入你选择的数据结构中。

(2)由于地铁还在不断扩建,请实现地铁站的更新、删除与插入功能。

(3)用户购票时只需输入上车站与下车站,由系统自动计算出票价(两站之内 2 元,三到四站 3 元, 以此类推)。

(4)输出用户票价的同时输出用户经过的地铁站。

(5)使用合适的查找算法,依据用户的输入实现地铁站点查询功能。

(6)记录每个地铁站的人流量总数,在管理员查询时,使用至少 3 种排序算法按照人流量从大到小的 顺序列出站点名称

【选做内容】

(1)使用另一种数据结构实现题目中描述的功能。

(2)输出一个任意地铁站到其余所有站点的票价速查表。

(3)假设地铁 5 分钟经过一个站点,请使用合适的数据结构存储用户的购票信息,使得地铁管理人员 可以查询当前时刻任意两个站点的乘客总人数。

(4)任何你想实现的有趣的功能(请说明这样做的理由并对源代码进行详细注释)。

效果展示:

22级数据结构大作业地铁订票系统c++,数据结构,课程设计,c++

上面1到4均为面向用户其余面向管理员

话不多说上代码:

1.头文件:

#include<iostream>
#include<string>
#include<stdlib.h>
#include<iomanip>
#include<list>
#include<fstream>
using namespace std;

主函数层面:

int main()
{
	list<station> important;
	fundationStation(important);
	string goveror="1234567";
	int flag=1;	
	while(flag)
	{
		ofstream document;
		document.open("document.txt",ios::out);//将数据同步到本地文件夹; 
		document<<"站点代号 "<<"站点名称 \t"<<"已售票数 "<<"将接待人数"<<endl;
		for(list<station>::iterator dit=important.begin();dit!=important.end();dit++)
		{
			document<<(*dit).stationNumber<<"\t"<<setw(20)<<left<<(*dit).stationName<<setw(5)<<right<<(*dit).saleTicket<<setw(10)<<right<<(*dit).comers<<endl;		
		}
		document.close();
		showmenu();
		cout<<"请输入您的选择:"<<endl;
		int youranswer;
		while(1)
		{
			cin>>youranswer;
			if(youranswer>=0&&youranswer<=11)//检查是否输入正确 
			{
				break;
			}
			else
			{
				cout<<"请正确输入"<<endl;
			}
		} 
		switch (youranswer) 
		{
			case 1://购票 
				buyTicket(important);
				system("pause");
				system("cls"); 
				break;
			case 2://站点查询 
				findStation(important); 
				system("pause");
				system("cls"); 
				break;
			case 3:
				findPrice(important);
				system("pause");
				system("cls");
				break;
			case 4:
				listStation(important);
				system("pause");
				system("cls");
		        break;
		    case 5:
		    	{
		    		cout<<"请输入管理员密码:"<<endl;
					string mima;
					cin>>mima;
					if(goveror==mima)
					{
						cout<<"密码正确:>"<<endl;
						string name;
						int position;
						cout<<"请输入新建地铁名称:"<<endl; 
						cin>>name;
						cout<<"将在何处新建站点"<<endl;
						cout<<"例如:在1,2间建立就输入2"<<endl;
						cout<<"在第一站之前就输入1"<<endl;
						cout<<"在最后一站之后就输入最后一站+1"<<endl; 
						cin>>position;
						createStation(name,position,important); 
					} 
					else
					{
						cout<<"密码错误:<"; 
					}
					system("psuse");
					system("cls");
				}
				break;
			case 6:
				{
					cout<<"请输入管理员密码:"<<endl;
					string mima;
					cin>>mima;
					if(goveror==mima)
					{
						cout<<"密码正确:>"<<endl;
						string name;
						cout<<"请输入修改地铁名称:"<<endl;
						cin>>name;
						modifyStation(name,important);
					}
					else
					{
						cout<<"密码错误:<"<<endl; 
					}
					system("psuse");
					system("cls");
				}
				break;
			case 7:
				{
					cout<<"请输入管理员密码:"<<endl;
					string mima;
					cin>>mima;
					if(goveror==mima)
					{
						cout<<"密码正确:>"<<endl;
						string sname;
						cout<<"请输入想删除的站点"<<endl;
						cin>>sname;
						deleteStation(sname,important); 
					}
					else
					{
						cout<<"密码错误:<"<<endl;
					}						
				} 
				break;
			case 8:
				{	
				    cout<<"请输入管理员密码:"<<endl;
					string mima;
					cin>>mima;
					if(goveror==mima)
					{
						cout<<"密码正确:>"<<endl;
						list<station> list2;
						list2.assign(important.begin(),important.end());
						bubble(list2);
					}
					else
					{
						cout<<"密码错误:<"<<endl;
					}
					system("pause");
					system("cls");
				}
				break;
			case 9:
				{	cout<<"请输入管理员密码:"<<endl;
					string mima;
					cin>>mima;
					if(goveror==mima)
					{
						cout<<"密码正确:>"<<endl;
						list<station> list3;
						list3.assign(important.begin(),important.end());
						directlyinsert(list3);
					}
					else
					{
						cout<<"密码错误:<"<<endl;
					}
					system("pause");
					system("cls");
				}
				break;
			case 10:
				{
					cout<<"请输入管理员密码:"<<endl;
					string mima;
					cin>>mima;
					if(goveror==mima)
					{
						cout<<"密码正确:>"<<endl;
						list<station> list4;
						list4.assign(important.begin(),important.end());
						kuaisu(list4);
					}
					else
					{
						cout<<"密码错误:<"<<endl;
					}
					system("pause");
					system("cls");
				}
				break;
			case 11:
				{
					cout<<"请输入管理员密码:"<<endl;
					string mima;
					cin>>mima;
					if(goveror==mima)
					{
						cout<<"密码正确:>"<<endl;
						string newkey;
						cout<<"请输入新密码:"<<endl;
						cin>>newkey;
						goveror=newkey;
						cout<<"修改成功"<<endl; 
					}
					else
					{
						cout<<"密码错误"<<endl;
					
					}
						system("pause");
						system("cls"); 
				}
				break;
			case 0:
				{
					cout<<"欢迎下次使用"<<endl;
					return 0;
					break; 
				}
			default:
				break;
		}
	}
		
}

3.选择菜单

void showmenu()//选择菜单; 
	{
		cout<<"------------------------"<<endl;
		cout<<"----欢迎使用郑州地铁----"<<endl;
		cout<<"1.购票"<<endl;
		cout<<"2.站点查询"<<endl;
		cout<<"3.票价查询"<<endl;
		cout<<"4.站点排序"<<endl;
		cout<<"5.新建站点"<<endl;
		cout<<"6.修改站点"<<endl;
		cout<<"7.删除站点"<<endl;
		cout<<"8.冒泡查看人流量"<<endl;
		cout<<"9.直接插入排序"<<endl;
		cout<<"10.折半插入排序"<<endl;
		cout<<"11.更改管理员密码"<<endl;
		cout<<"0.退出"<<endl;
		cout<<"------------------------"<<endl;
	}

4.定义一个类包含地铁站信息

class station //定义一个类包含地铁站的信息; 
	{
		public:
			station(){}
			station(int xubao,string ditieming,int shoupiaoshu,int people)
			{
				this->saleTicket=shoupiaoshu;//售票
				this->stationNumber=xubao;//
				this->stationName=ditieming;//地铁名 
				this->comers=people;
			}
			bool operator==(const station& m)const{
				if(this->saleTicket==m.saleTicket&&this->stationNumber==m.stationNumber&&this->stationName==m.stationName&&this->comers==m.comers)
				{
					return true;
				}
				return false;
			}
		public:
			int stationNumber;//地铁序号 	
			string stationName;//地铁名
			int saleTicket;//卖出票数
			int comers; 
	};

5.建站及初始信息:

void  fundationStation(list<station>& important)
	{
		station no1(1,"郑州火车站",0,0);
		station no2(2,"二七广场",0,0);
		station no3(3,"人民路",0,0);
		station no4(4,"紫荆山",0,0);
		station no5(5,"燕庄",0,0);
		important.push_back(no1);//从尾部插入到列表中 
		important.push_back(no2);
		important.push_back(no3);
		important.push_back(no4);
		important.push_back(no5); 
	}

6.买票对应 菜单选项1

void buyTicket(list<station>&v1)
	{
		string first,last;
		cout<<"请输入起始站点:";
		cin>>first;
		cout<<"请输入结尾站点:";
		cin>>last;
		list<station>::iterator firsts;
		list<station>::iterator lasts;
		int flag1,flag2;
		for(list<station>::iterator myarr=v1.begin();myarr!=v1.end();myarr++)
		{
			if((*myarr).stationName==first)
			{
				firsts=myarr;
				flag1=0;
			} 
			if((*myarr).stationName==last)
			{
				lasts=myarr;
				flag2=0;
			}
		}
		if(flag1==0&&flag2==0)
		{
			if((*firsts).stationNumber==(*lasts).stationNumber)
			{
				cout<<"您目前所处的即是站点"<<endl; 
			}
			else if((*firsts).stationNumber<(*lasts).stationNumber)
			{
				cout<<"您的行程路线为:"<<endl;
				for(list<station>:: iterator luxian=firsts;luxian!=lasts;luxian++){
					cout<<(*luxian).stationName<<"->";
				} 
				cout<<(*lasts).stationName<<endl;
				(*firsts).saleTicket+=1;
				(*lasts).comers+=1;
				if((*lasts).stationNumber-(*firsts).stationNumber<=2)
				{
					cout<<"您的票价为"<<2<<"元"<<endl;
					cout<<"欢迎下次使用"<<endl; 
				}
				else
				{
					  if(((*lasts).stationNumber-(*firsts).stationNumber)%2==0){
								cout<<"您的票价为"<<(*lasts).stationNumber-(*firsts).stationNumber-1<<"元"<<endl;
								cout<<"欢迎下次使用"<<endl; 
								}
								else
								{
									cout<<"您的票价为"<<(*lasts).stationNumber-(*firsts).stationNumber<<"元"<<endl;
								cout<<"欢迎下次使用"<<endl; 
								}
				}
			}
			else
			{
					for(list<station>:: iterator luxian=firsts;luxian!=lasts;luxian--)
					{
						cout<<(*luxian).stationName<<"->";
					} 
					cout<<(*lasts).stationName<<endl;
					(*firsts).saleTicket+=1;
					(*lasts).comers+=1;
				if((*firsts).stationNumber-(*lasts).stationNumber<=2)
					{
						cout<<"您的票价为"<<2<<"元"<<endl;
						cout<<"欢迎下次使用"<<endl; 
					}
				else
					{
					if(((*firsts).stationNumber-(*lasts).stationNumber)%2==0){
								cout<<"您的票价为"<<(*firsts).stationNumber-(*lasts).stationNumber-1<<"元"<<endl;
								cout<<"欢迎下次使用"<<endl; 
								}
								else
								{
									cout<<"您的票价为"<<(*firsts).stationNumber-(*lasts).stationNumber<<"元"<<endl;
								    cout<<"欢迎下次使用"<<endl; 
								}
					}
			}
		}
		else
		{
			cout<<"您输入的站点不存在!"<<endl; 
		}
	}

7.查询站点对应菜单选项2

	void findStation(list<station>&v1)
	{
		int flag1;
		string smname;
		cout<<"请输入你要查询的站点:"<<endl;
		cin>>smname;
		for(list<station>::iterator chaxun=v1.begin();chaxun!=v1.end();chaxun++)
		{
			if((*chaxun).stationName==smname)
			{
				cout<<"站点号码:"<<(*chaxun).stationNumber<<endl;
				flag1=0; 
			}
		} 
		if(flag1==0)
		{
			cout<<"查询完成 :)"<<endl;
		}
		else
		{
			cout<<"抱歉,您输入的站点未查询成功!"<<endl; 
		}
	}

8.查询票价对应菜单选项3

	void findPrice(list<station>&v1)
	{
		string first,last;
				cout<<"请输入起始站点:";
				cin>>first;
				cout<<"请输入结尾站点:";
				cin>>last;
				list<station>::iterator firsts;
				list<station>::iterator lasts;
				int flag1=1,flag2=1;
				for(list<station>::iterator myarr=v1.begin();myarr!=v1.end();myarr++)
				{
					if((*myarr).stationName==first)
					{
						firsts=myarr;
						flag1=0;
					} 
					if((*myarr).stationName==last)
					{
						lasts=myarr;
						flag2=0;
					}
				}
				if(flag1==0&&flag2==0)
				{
					if((*firsts).stationNumber==(*lasts).stationNumber)
					{
						cout<<"您目前所处的即是站点"<<endl; 
					}
					else if((*firsts).stationNumber<(*lasts).stationNumber)
					{
						(*firsts).saleTicket+=1;
						(*lasts).comers+=1;
						if((*lasts).stationNumber-(*firsts).stationNumber<=2)
						{
							cout<<"您的票价为"<<2<<"元"<<endl;
							cout<<"欢迎下次使用"<<endl; 
						}
						else
						{
							    if(((*lasts).stationNumber-(*firsts).stationNumber)%2==0){
								cout<<"您的票价为"<<(*lasts).stationNumber-(*firsts).stationNumber-1<<"元"<<endl;
								cout<<"欢迎下次使用"<<endl; 
								}
								else
								{
									cout<<"您的票价为"<<(*lasts).stationNumber-(*firsts).stationNumber<<"元"<<endl;
								cout<<"欢迎下次使用"<<endl; 
								}
						}
					}
					else
					{
							(*firsts).saleTicket+=1;
							(*lasts).comers+=1;
						if((*firsts).stationNumber-(*lasts).stationNumber<=2)
							{
								cout<<"您的票价为"<<2<<"元"<<endl;
								cout<<"欢迎下次使用"<<endl; 
							}
						else
							{
							if(((*firsts).stationNumber-(*lasts).stationNumber)%2==0){
								cout<<"您的票价为"<<(*firsts).stationNumber-(*lasts).stationNumber-1<<"元"<<endl;
								cout<<"欢迎下次使用"<<endl; 
								}
								else
								{
									cout<<"您的票价为"<<(*firsts).stationNumber-(*lasts).stationNumber<<"元"<<endl;
								    cout<<"欢迎下次使用"<<endl; 
								}
							}
					}
				}
				else
				{
					cout<<"您输入的站点不存在!"<<endl; 
				}
		
	} 

9.插入部分需要的代码

	void listStation(list<station>&v1)
	{
		cout<<"站台代号\t"<<"站台名称\t"<<"已售票数\t"<<"将接待人数"<<endl;
			for(list<station>::iterator dit=v1.begin();dit!=v1.end();dit++)
		{
			cout<<(*dit).stationNumber<<"\t\t"<<setw(12)<<left<<(*dit).stationName<<"\t"<<right<<(*dit).saleTicket<<"\t\t"<<(*dit).comers<<endl;		
		}
	}
	void sortStation(list<station>&v1)
	{
		int i=1;
		for(list<station>::iterator it=v1.begin();it!=v1.end();it++,i++)
		{
			(*it).stationNumber=i;
		}
	}
	void insertStation(station& s,int a,list<station>&v1)
	{
		int flag=1;
		for(list<station>::iterator it=v1.begin();it!=v1.end();it++)
		{
			if((*it).stationNumber==a)
			{
				v1.insert(it,s);
				flag=0;
			}
		}
		if(flag==1)
		{
			v1.push_back(s);
		}
		sortStation(v1);
	}
void createStation(string& name,int a,list<station>& v1)
	{
		station s(0,name,0,0);
		insertStation(s,a,v1);
		cout<<"建站成功!"; 
	}

10.修改站点

	void modifyStation(string name,list<station>&v1)
	{
		int flag=1;
		for(list<station>::iterator it=v1.begin();it!=v1.end();it++)
		{
			if((*it).stationName==name)
			{
				string mname;
				cout<<"站点名称修改为:"<<endl;
				cin>>mname;
				(*it).stationName=mname;
				cout<<"修改成功!";
				flag=0; 
			}
			
		}
		if(flag==1)
		{
			cout<<"没有找到你想要修改的站点:<"<<endl;
		}
	}

11.删除站点

void deleteStation(string ssname,list<station>&v1)
	{
		int flag=1;
		for(list<station>::iterator it=v1.begin();it!=v1.end();it++)
		{
			if((*it).stationName==ssname)
			{
				v1.remove(*it);
				flag=0;
				cout<<"删除成功:>"<<endl;
				break;
			}
			
		}
		if(flag==1)
		{
			cout<<"没有找到你想要删除的站点:<"<<endl;
		}
		else if(flag==0)
		{
			int i=1;
			for(list<station>::iterator it=v1.begin();it!=v1.end();it++,i++)
			{
				(*it).stationNumber=i;	
			}	
		} //更新站点标号 
	}

8.9.10实现的代码

void myswap(list<station>::iterator& p1,list<station>::iterator& p2)
		{
			int shoupiaoshu=(*p1).saleTicket;
			int xuhao=(*p1).stationNumber;
			string ditieming=(*p1).stationName;
			int renshu=(*p1).comers;
			
			(*p1).saleTicket=(*p2).saleTicket;
			(*p1).stationNumber=(*p2).stationNumber;
			(*p1).stationName=(*p2).stationName;
			(*p1).comers=(*p2).comers;
			
			(*p2).saleTicket=shoupiaoshu;
			(*p2).stationNumber=xuhao;
			(*p2).comers=renshu;
			(*p2).stationName=ditieming;
			
			
		}
	void bubble(list<station>&v1)//有待改进 
	{
			
		for(list<station>::iterator myi=v1.begin();myi!=v1.end();myi++)
		{
			for(list<station>::iterator myl=v1.begin();myl!=v1.end();myl++)
			{
				if((*myi).saleTicket>(*myl).saleTicket)
				{
					myswap(myi,myl);
				}	
			}
		}
		listStation(v1);
	}
	
	void directlyinsert(list<station>&v1)
	{
		struct my{
			int stationNumber;
			int saleTicket;
			string stationName;
			int comers;
		}mystruct[100];
		int m=0;
		int n=0;
		for(list<station>::iterator mi=v1.begin();mi!=v1.end();mi++,m++){
			mystruct[m].stationNumber=(*mi).stationNumber;
			mystruct[m].stationName=(*mi).stationName;
			mystruct[m].saleTicket=(*mi).saleTicket;
			mystruct[m].comers=(*mi).comers;
			n++;
		}
		int i,j;
		my tmp;
		for(i=1;i<n;i++)
		{
			if(mystruct[i].saleTicket>mystruct[i-1].saleTicket)
			{
				tmp.stationNumber=mystruct[i].stationNumber;
				tmp.saleTicket=mystruct[i].saleTicket;
				tmp.stationName=mystruct[i].stationName;
				tmp.comers=mystruct[i].comers;
				j=i-1;
				do{
					mystruct[j+1]=mystruct[j];
					j--;
				}while(j>=0&&mystruct[j].saleTicket<tmp.saleTicket);
				mystruct[j+1].stationName=tmp.stationName;
				mystruct[j+1].comers=tmp.comers;
				mystruct[j+1].saleTicket=tmp.saleTicket;
				mystruct[j+1].stationNumber=tmp.stationNumber;
			}
		}
		cout<<"站点代号\t "<<"站点名称 \t"<<"已售票数 "<<"将接待人数"<<endl;
		for(int i=0;i<n;i++){
			cout<<mystruct[i].stationNumber<<"\t\t"<<setw(12)<<left<<mystruct[i].stationName<<"\t"<<right<<mystruct[i].saleTicket<<"\t\t"<<mystruct[i].comers<<endl;
		}
	}
	void kuaisu(list<station>&v1)//折半插入 
	{
		struct my{
					int stationNumber;
					int saleTicket;
					string stationName;
					int comers;
				}mystruct[100];
				int m=0;
				int n=0;
				for(list<station>::iterator mi=v1.begin();mi!=v1.end();mi++,m++){
					mystruct[m].stationNumber=(*mi).stationNumber;
					mystruct[m].stationName=(*mi).stationName;
					mystruct[m].saleTicket=(*mi).saleTicket;
					mystruct[m].comers=(*mi).comers;
					n++;
				}
		int i,j,low,high,mid;
		my tmp;
		for(i=1;i<n;i++)
				{
					if(mystruct[i].saleTicket>mystruct[i-1].saleTicket)
					{
						tmp.stationNumber=mystruct[i].stationNumber;
						tmp.saleTicket=mystruct[i].saleTicket;
						tmp.stationName=mystruct[i].stationName;
						tmp.comers=mystruct[i].comers;
					    low=0,high=i-1;
					    while(low<=high)
					    {
							mid=(low+high)/2;
							if(tmp.saleTicket>mystruct[mid].saleTicket)
							{
								high=mid-1;
							}
							else
							{
								low=mid+1;	
							}
						}
						for( j=i-1;j>=high;j--){
							mystruct[j+1]=mystruct[j];
							mystruct[high+1].stationNumber=tmp.stationNumber;
							mystruct[high+1].comers=tmp.comers;
							mystruct[high+1].saleTicket=tmp.saleTicket;
							mystruct[high+1].stationName=tmp.stationName;
						}
					}
				}
				cout<<"站点代号\t "<<"站点名称 \t"<<"已售票数 "<<"将接待人数"<<endl;
						for(int i=0;i<n;i++){
							cout<<mystruct[i].stationNumber<<"\t\t"<<setw(12)<<left<<mystruct[i].stationName<<"\t"<<right<<mystruct[i].saleTicket<<"\t\t"<<mystruct[i].comers<<endl;
						}
	}

注意默认初始密码为1234567,输入11时可进行修改。

已完结,点个赞支持一下b。文章来源地址https://www.toymoban.com/news/detail-821197.html

到了这里,关于22级数据结构大作业地铁订票系统c++的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据结构大作业 校园导航系统

    【问题描述】 以我校为例,设计一个校园导航系统,主要为来访的客人提供信息查询。系统有两类登陆账号,一类是游客,使用该系统方便校内路线查询;一类是管理员,可以使用该系统查询校内路线,可对校园景点路线可编辑。 【需求分析】 设计学校的平面图,至少包括

    2024年02月09日
    浏览(39)
  • 数据结构课程设计 ——考试报名系统

    数据结构课程设计 ——考试报名系统 一、项目功能要求 完成对考生信息的建立,查找,插入,修改,删除等功能。其中考生信息包括准考证号,姓名,性别,年龄和报考类别等信息。项目在设计时应首先确定系统的数据结构,定义类的成员变量和成员函数;然后实现各成员

    2024年02月04日
    浏览(56)
  • 数据结构课程设计 仓储管理系统

    【基本功能】 把货品信息表抽象成一个线性表,货品信息(包括ID、货品名、定价、数量等)作为线性表的一个元素,实现:按ID、货品名分别查找某货品信息(包括ID、货品名、定价、数量等);收录货品(如果货品在帐中已有,则只将总库存量增加。否则插入新增信息);

    2024年01月23日
    浏览(71)
  • 【数据结构课程设计】简单搜索引擎系统

    该程序使用python语言实现利用爬虫代码爬取网站链接信息,将网站中文词语通过结巴分词进行分割,并存储爬取的数据信息,利用结巴分词库处理输入框用户输入的词语,进行搜索,通过链接评价函数,优先显示评分较高的链接;设计简单的html页面,实现可视化搜索功能。

    2024年01月23日
    浏览(60)
  • 数据结构课程设计:学生成绩管理系统

    目  录 第一章   需求分析 第二章 概要设计 第三章 详细设计 第四章 测试报告 第五章 安装及使用 第六章 项目总结 第七章 源码 一.需求分析        学生成绩管理是一个学校不可缺少的部分,它的内容对于学校的管理者和学生以及学生家长来说都至关重要,所以一个良好

    2024年02月02日
    浏览(70)
  • 【用C语言描述数据结构】课程设计:歌手比赛系统

    ✅作者简介:一名在读大二学生,希望大家多多支持👍👍👍 🔥系列专栏:数据结构 💬个人主页:梦园的CSDN博客 文末附有全部代码哦 💖💖 文末附有全部代码哦~ 设计一个简单的歌手比赛绩管理程序,对一次歌手比赛的成绩进行管理,使用 链表 实现,基本的设计要求如

    2024年02月03日
    浏览(71)
  • 数据结构课程设计——电话号码查询系统(C语言)

    1、通过文件导入和手动输入两种方式录入个人的基本信息(姓名、电话、QQ、微信) 2、可通过输入姓名或者电话号码来查询录入的人的基本信息 3、也可通过该系统修改和删除信息 1、菜单界面  2、读取文件(这里需要先创建一个txt文件)  3、手动添加信息  4、查询个人信

    2024年02月11日
    浏览(61)
  • 数据结构课程设计——哈夫曼编/译码系统设计与实现(C++)

    对于生产实际的问题,本设计可以作为一个无损数据压缩工具,在需要传输海量数据时,利用哈夫曼编码可以将数据进行压缩,从而减小传输的数据量,提高数据传输效率。同时,哈夫曼编码也可以应用于数据加密和解密等领域。 本设计的主要目的是学习哈夫曼编码算法,并

    2024年02月04日
    浏览(50)
  • 数据结构课程设计——学生成绩查询与分析系统(简单详细版,含讲解)

    写在前面:欢迎来到「湫歌」的博客。我是秋秋,一名普通的在校大学生。在学习之余,用博客来记录我学习过程中的点点滴滴,也希望我的博客能够更给同样热爱学习热爱技术的你们带来收获!希望大家多多关照,我们一起成长一起进步。也希望大家多多支持我鸭,喜欢我

    2024年02月10日
    浏览(89)
  • 【地铁上的面试题】--基础部分--数据结构与算法--动态规划和贪心算法

    一、动态规划的基本概念和思想 1.1 动态规划的定义和特点 动态规划是一种解决多阶段决策问题的算法思想,它通过将问题划分为若干个子问题,并保存子问题的解来求解原问题的方法。动态规划的特点包括以下几个方面: 最优子结构性质:动态规划问题具有最优子结构,即

    2024年02月12日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包