电梯调度算法

    这是我和黄冠的初步想法:
   数据结构是这样的每个人是一个结构体,结构体包括人的姓名name,体重weight,所在的层数nfloor,要去的层数wfloor。建一个结构体数组代替所有人。电梯也是一个结构体,包括能承载的重量mweight,方向way(向上为1,向下为0),所在楼层dfloor。想法是这样的,如果当前楼层的上方和下方都有请求,则先响应所有上方的请求,然后才向下响应下方的请求;如果电梯向下运动,则刚好相反。先查询电梯运行方向的楼层是否存在有其他键被按下,有就继续往该方向运行,如果没有就查询电梯运行反方向的楼层是否有按键被按下,如果有电梯就改变方向,反方向运行。如果没有电梯就停止在该楼层,30秒后如果没有任何键被按下,电梯就自动返回1楼驻停。同时,电梯乘客所去的楼层方向与电梯当前方向一致的话,则电梯优先搭载该乘客。随后再搭载去反方向的乘客。实现电梯的升降操作。

我们大致就想到这么多,编程还没开始,感觉巨难编,要编带界面的更难。
                                                                           
                                                                                     高晓林 黄冠 
posted @ 2014-03-10 20:10  高晓林  阅读(225)  评论(1编辑  收藏  举报