A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

©   /  2012-3-12 16:54  /  9003 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 马胜平 于 2012-3-13 00:01 编辑

分析了这个程序,首先分析下现实中电梯的上下楼情况,电梯相应命令的方式很简单是谁先按下就先响应谁的命令,如果仅仅这么考虑就简单了,我们可定义一个队列,在定一个任务(附着在线程上)模拟人随机按不通楼层的按钮并把每个人按的按钮命令(这里可把按的数字放到队列)放到队列中,然后然电梯去从这个队列中去命令,取到就执行,执行完后就再取一直到队列为空为止。但是这里还要考虑一个情况实际中的电梯有个这样的情况比如电梯在一楼,8楼要下楼先按,这时候电梯准备去响应这个命令;此时6楼有人要下楼按了。这时候电梯会干嘛?会到6楼停一下开门再到8楼,不要被这个动作迷惑了他还是先去响应8楼在来到响应6楼命令(只是中间看到6楼灯开的开了下门并未执行命令如果6楼是下楼进去按了下1电梯不会马上下它还是先到8楼然后下楼,没破坏队列规则)如果考虑开门的动作就复杂了点。现实的电梯是这样的吧我感觉是的!你没注意没,我平时没注意。但我是按照我这个逻辑写了一个模拟程序。如果实际中不是这样的就的另考虑了。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马