回 帖 发 新 帖 刷新版面

主题:[讨论]离散事件-银行业务模拟程序。求各位哥哥姐姐帮忙 谢谢

人两个客人来到银行的时间间隔(10-30F)按随机分配
当客人来到银行的时候先要找到办理该种业务的几个 窗口,然后选择一个排队最短(但服务时间不一定最短)的窗口排队
每个客人排好队的时候随即分配服务时间(5-10F)给他
但客人离开的时候,计算其进入银行到离开银行的时间

[em18][em18][em18][em18][em18][em18][em18][em18]

回复列表 (共2个回复)

沙发

我觉得顾客的到达时间可以事先用泊松分布计算出来并存下来,接下来有2个事件:
1.顾客到达;
2.顾客离开。
我们需要维持2个队列(queue),一个是等待顾客的队列,一个是离开事件的队列。
只要选取最近将要发生的事件(在上面两个队列中一比较就知道),然后作出相应处理即可。
其中离开事件由于要选最先离开的,所以可以用一个优先队列(堆)来实现。
上面是我的看法,有不少数据结构的书上也有讲解的,您看看

板凳



不记得了 

感觉白学了

我来回复

您尚未登录,请登录后再回复。点此登录或注册