银行预约排队系统(数据结构问题)

上传人:jian****019 文档编号:245132224 上传时间:2024-10-07 格式:PPT 页数:25 大小:346.60KB
返回 下载 相关 举报
银行预约排队系统(数据结构问题)_第1页
第1页 / 共25页
银行预约排队系统(数据结构问题)_第2页
第2页 / 共25页
银行预约排队系统(数据结构问题)_第3页
第3页 / 共25页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2015/4/26,#,预约排队系统,第三小组:,孙鹏飞,问题分析,朱思敏,结构算法,周华毅,代码实现,问题分析:(孙鹏飞),排队系统的背景:,预约排队问题在我们的现实生活中广泛存在,大到如银行排队叫号系统、医院门诊挂号系统、火车票预售订购系统等,小到餐饮消费、交通出行、购物付款等。,也许你会想这些问题十分简单,不就是排队吗?按照先来后到的秩序就,OK,了呗,有什么好讨论的。可事实却并非如此!试想如果考虑到银行客户的,VIP,身份、医院就诊患者的病况、订票人员是否为老人军人或残疾人等特殊情况,先来后到的秩序还适用吗?,再者,传统的排队观念都是一个队伍排成“长龙”,当人数过多时,考虑到效率问题,就要改变排成多只队伍,那多只队伍同时开工又该如何处理呢?可见预约排队问题并非想象中那么简单,研究它也具有一定的 现实意义!,鉴于实际情况,我们小组本次讨论课就选取银行排队叫号系统作为讨论主题,来研究预约排队系统。其它预约排队问题则大同小异,基本处理方法可以效仿解决之。,银行排队系统的意义:,银行预约排队系统是为模拟银行排队而设计的。随着银行业务量的快速发展,银行柜台业务承受的压力越来越大,排队等待现象屡见不鲜,银行排长队现象成为困扰银行和用户的难题。为了解决这一难题,目前大部分银行的营业厅都使用了取号系统来改善银行窗口排长队的现象,提高银行的服务效率。,图为市民在工商银行排队,银行排队,每个人都经历过的痛,本次讨论计划设计并实现银行取号模拟系统,模拟取号的整个过程,实现取号、排队、服务、及管理等功能。系统能够记录用户及工作人员的相关信息,管理员通过对用户及工作人员信息的统计和分析,可以进一步优化银行营业厅的排队问题,提高银行业务办理效率。,系统需求分析:,系统要求智能化管理,柜台业务非责人可以根据实时顾客流量合理分配柜台数量,实行动态的科学管理。根据柜台个人的业务能力可以划分成不同的业务级别,在自己的级别内可以实现“互助”式的柜台转移呼叫操作,并要随着业务员能力的提高和降低随时进行增加和减少的量化控制。在顾客需在多个柜台(业务)服务时,可持同一张号票自动进入排队队列,而不需要重新取号。,登录:在一天工作开始前,输入员工代码(最大四位数)进行登录,退出:在一天工作结束后,退出系统。当工作人员暂时离开,可通过终,端关闭此柜台,同时,该柜台显示屏自动关闭。,优先:碰到紧急或有特殊关系的顾客,可优先呼叫。,转移:偶尔顾客拿错部门号票或需要多柜台服务,可即时传送其他部门,,无需重新取号等待。,延后:当多次重呼后,顾客依然没有响应,把该顾客延后到本服务类型,的最后一位(漏号顾客处理方法之二)。,柜台:可修改柜台服务类型,从而实现临时帮助其他服务柜台的额目的。,清屏:清除错误的输入。,插前:顾客需多柜台服务时,完成一段服务后,其号码被移到另一队列,的首位。,储存:当呼叫时而顾客恰好不在,可暂时储存,然后继续呼叫下一位顾,客,办理完毕后再重新呼叫,顾客无需担心错过时间。,询问:查询当前等待人数。,查看:查看储存的号码。,密码登录:根据需要,可设定用户个人密码,使用密码登录。,(,PS,:以上只是初步设想,后续不一定实现全部功能!),业务流程分析:,系统结构分析和设计:,根据前面的描述,画出该银行排队叫号系统的控制流程图如下:,结构算法:(朱思敏),数据结构:,银行排队系统应采用了队列的方法实现。,队列,(Queue),也是一种运算受限的线性表。它只允许在表的一端进行插入,而在另一端进行删除。允许删除的一端称为队头,(front),,允许插入的一端称为队尾,(rear),。,例如:在银行排队系统中,先进入队列的成员总是先离开队列。因此队列亦称作先进先出,(First In First Out),的线性表,简称,FIFO,表。,当队列中没有元素时称为空队列。在空队列中依次加入元,a1,a2,an,之后,,a1,是队头元素,,an,是队尾元素。显然退出队列的次序也只能是,a1,a2,an,,也就是说队列的修改是依先进先出的原则进行的。队列的链式存储结构简称为链队列,它是限制仅在表头删除和表尾插入的单链表。显然仅有单链表的头指针不便于在表尾做插入操作,为此再增加一个尾指针,指向链表的最后一个结点,一个链队列由头指针和尾指针唯一确定。,详细设计:,本系统分为以下,6,个功能模块,分别是:,顾客到达,顾客离开,查看业务办理,查看排队情况,系统查询,退出。,顾客到达界面:当客户到达时,在主菜单输入“,1”,进入“客户到达面”。,此界面区分,VIP,客户到达和普通客户到达。,VIP,:客户在“到达界面”输入“,1”,,进入,VIP,验证,通过,VIP,卡号和密码验证就可以进入,VIP,区办理业务。,普通客户:客户在“到达界面”输入“,2”,,系统即为客户分,配业务号,凭此号办理业务、排队或离开。,客户离开界面:当客户完成办理业务需要离开时。在主菜单输入“,2”,进,入“客 户离开界面”。此界面提供服务评分。首先输入,自己的客户号,然后选择自己办理业务的柜台号,结合,自己对这次服务的满意度给出评分,然后系统给出此柜,台的平均分和自己办理业务过程中所需要的时间。,业务查询界面:在主菜单输入“,3,”进入“业务查询界面”,在此界面可,查询到正在业务办理的情况。,排队查询界面:在主菜单输入“,4,”,进入“排队查询界面”,此界面提,供客户的排队情况、排队人数。,查询系统:因为此功能为内部工作人员使用,所以通道选项在主菜单上,隐藏。在主菜单输入“,6,”,进入“系统查询界面”。通过此,此界面的卡号、密码验证,就可以查询到系统开起至查询时,办理业务的普通客户、,VIP,客户人数。并可以显示所有普通客,户办理业务的总时间,每个客户所用的平均时间。查询系统,运行的时间。,数据类型定义:,1,、数组的结构体定义:,struct List,int An+1;/,顾客用来办理业务的,N,个窗口,int len;/,表示数组中的元素个数,L;,2,、链表节点的结构体定义:,struct Lnode /,链表结点类型,int data;,Lnode*next;,;,3,、链式存储的的结构体定义,struct Linkqueue /,链式存储的等候队列的类型定义,Lnode*front;,Lnode*rear;,Q;,4,、子程序及功能设计,1,),vip(a),源程序:此界面区分,VIP,客户到达和普通客户到达。,2,),daoda(v),源程序:解决顾客到达事件算法。,3,),likai(x),源程序:解决顾客离开事件算法。,4,),int pingfeng(),源程序:判断输入的分数是否正确。,5,),print2(),源程序:输出队列算法。,6,),printl(),源程序:显示正在办理业务的客户。,7,),int Dlqueue(Linkqueue*Q),源程序:出队算法。,在本设计中,设计的主要工作,围绕着,事件表,进行,按照一定的规,则把事件加入事件表或从事件表中,取出事件,并根据事件的类型、事,件发生的时间来调度程序的运行,作业在进行排队时,也需要,队列,表,来保持作业的属性。,为便于事件表和队列的实现,,本设计中使用的数据结构主要是循,环队列,并采用带有头尾标志的数,组来实现循环队列。,代码实现,:(周华毅),源代码,&,分析:,程序正常运行界面:,The end!,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!