日期:2014-05-19  浏览次数:20756 次

100 求排班算法 大家来讨论一下 我是越想越乱了
9时整点路况播报     上海交通台     9:00     9:03  
    9点新闻加油站     东方广播电台     9:00     10:00
    新闻快车道     上海交通台     9:03     9:30
    9点新闻     加广中文     9:05     10:04  
    9时半点路况播报     上海交通台     9:30     9:32  
    9时新闻加油站     上海交通台     9:57     10:00
    10时整点路况播报     上海交通台     10:00     10:03


现在我有一组类似上边这样的电台信息,同时有5个收音机(假设已经有一些收间任务了),现在要把这些电台按各自的开始时间结束时间合理的排在5个收音机上,规则很简单,只要时间不冲突又排完这些节目就行了……当然如果革个节目排不进去可以给用户提醒

这些任务在数据库中有记录,开始时间和收音机编号是记录的主键


我想很久了,起想越乱……,没有太省事的算法,求助大家噢

------解决方案--------------------
t.end < t.strat 用一台...循环组合
------解决方案--------------------
t1.end < t2.strat t1,t2合用一台...循环组合
------解决方案--------------------
学习
------解决方案--------------------
如下建模:
1.做五个数组和五个值(节目结束时间)
2.将节目按开始时间排序
3.将节目依次放到五个数组中,原则是总往五个值中最小的那个数组里放,放后修改值。

这是模型的原型,可以在此基础上优化,原则是少浪费空间。
------解决方案--------------------
@_@