zoukankan      html  css  js  c++  java
  • 电梯调度程序1

    MMP垃圾作业
    [GitHub](https://github.com/RTXUX/Elevator-scheduling.git)

    简单电梯调度程序

    偷了个懒,拿寒假作业改改

    模块划分

    其实没什么可以说的,跟寒假作业差不多,就是把World类和Elevator类合并了一下

    • Elevator类:维护已入厢乘客容器,当前楼层,负责处理入厢出厢,维护等待状态,运行主循环。
    • Passenger类:其对象记录乘客信息。
    • Scheduler类:(核心)决定电梯的上升下降和停靠,持有Elevator对象的引用,可访问所有需要的信息,可以有自己的状态,可插拔。

    实现方法

    预估时间法

    每一秒,电梯只有向上,向下,停靠三种操作,我们可以预估每种操作所需时间,选取时间最小的。
    仍然是使用移植的Stolf大佬的算法。
    这里必须给Stolf大佬赞一个,几乎所有参数都不硬编码,只需要改几个变量和宏就可以了。

    遇到的困难

    好像我遇到的困难都比较奇怪

    1. Visual Studio无法构建CMake项目

    Visual Studio打开CMake项目后持续创建cmd.exe进程,就是不构建项目,原因未知,网上找不到有相似问题的。
    Workaround: 创建Visual C++项目,把源代码移过去。
    Solution: 重装VS解决

    类图

  • 相关阅读:
    关于Java中的hashCode和equals方法
    web学习--java applets
    web学习——异步支持AsyncSupported
    关于Session的另外一个例子
    Web学习之Session
    Servlet过滤器-日志记录
    什么是XML?
    企业级应用和互联网应用的异同
    J2EE Map
    个人所犯错误总汇
  • 原文地址:https://www.cnblogs.com/rtxux/p/8886780.html
Copyright © 2011-2022 走看看