- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验 停车场管理
姓名:曹国君 梁辰 唐琪皓 黄悦 班级:信息1班
学号0912567509125673 实验时间:第5周
1.问题描述
设停车场内只有一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后开入得车辆必须先退出车场为它让路,待该车辆开出大门外,其他车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按照它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。
数据结构设计
由于停车场的停车位有限,只有一个入口,且通道狭长,当停车场内某辆车要离开时,在它之后开入得车辆必须先退出车场为它让路,顺序栈的结构符合停车场的需求。
若车场内已停满,车辆再外排队等候,队伍不限长度,可以使用链式队列进行模拟。
输入:停车位数,停车费单价,进入或离去,车牌号,进入或离去时间
输出:进入:输出停在停车场或者便道上的位置
离去:输出停留在停车场上的时间(离开时间-进入停车场的时间)及费用
为了满足以上的要求,至少需要记录进入时间以及车牌号
templateclass ElemType
class SqStack
{ protected:
// 顺序栈的数据成员:
int top; // 栈顶指针
int maxSize;
struct Set //定义一个结构体,可以存放两个数据
{ElemType num;
ElemType time;
}; // 栈最大容量
Set *elems;
}
template class ElemType
struct Node
{
// 数据成员:
ElemType data1,data2; // 两个数据域
NodeElemType *next; // 指针域
// 构造函数:
Node(); // 无参数的构造函数
Node(ElemType item1,ElemType item2 ,NodeElemType *link = NULL); //已知数数据元素值和指针建立结构
};
程序设计
(1)头文件
由于数据域的改变,创建,插入,删除等函数都需要增加一个数据域的处理。
顺序栈:
public:
// 抽象数据类型方法声明及重载编译系统默认方法声明:
SqStack(int size = DEFAULT_SIZE); // 构造函数
virtual ~SqStack(); // 析构函数
int Length() const; // 求栈长度
bool Empty() const; // 判断栈是否为空
void Clear(); // 将栈清空
void Traverse(void (*Visit)(const ElemType )) const; // 遍历栈
Status Push(const ElemType e,const ElemType t); // 入栈
Status Top(ElemType e,ElemType t) const; // 取顶元素
Status Pop(ElemType e,ElemType e); // 出栈
SqStack(const SqStackElemType copy); // 复制构造函数
SqStackElemType operator =(const SqStackElemType copy); // 赋值语句重载
链式队列:
public:
LinkQueue(); // 无参数的构造函数
virtual ~LinkQueue(); // 析构函数
int Length() const; // 求队列长度
bool Empty() const; // 判断队列是否为空
void Clear(); // 将队列清空
void Traverse(void (*Visit)(const ElemTy
您可能关注的文档
最近下载
- 讲解员日常培训学习制度.docx VIP
- 《多联机空调系统工程技术规程-工程质量检查表填写范例》JGJ174-2021定义.pdf VIP
- T/CAQ 10204-2017_质量信得过班组建设准则.pdf VIP
- DB3306 T078-2025《数据知识产权入表指南》.pdf VIP
- 智能工厂质量管控策略规划与体系建设2025年度白皮书.docx
- 人教版(2019)高中生物选择性必修二 4.docx VIP
- 第1章第1节传统发酵技术的应用讲义【新教材】人教版(2019)高中生物选择性必修3.docx VIP
- 讲义【新教材】人教版(2019)高中生物选择性必修3 .pdf VIP
- 高中生物选择性必修三知识点总结(人教版2019).pdf VIP
- 2019新人教版高中生物选择性必修三全册重点知识点归纳总结(复习必背).docx VIP
文档评论(0)