“预订房间开关最少的房间”的算法解决方案是否有名称?

时间:2013-10-28 20:26:05

标签: algorithm greedy

我正在与同事讨论我们使用我们部署的软件时遇到的问题,他提到它与一段时间内预订房间的概念问题类似,算法应输出房间需要最少开关的预订(例如,最佳解决方案可能是在一个房间停留3天,其余房间在另一个房间,只需要两个开关)。

算法中是否存在此类问题的名称?

1 个答案:

答案 0 :(得分:1)

最初我发布了有关minimum set cover problem的内容。虽然您可以将问题描述为最小集合覆盖问题,但如果我们假设“房间预订”是连续几天,则可以使用不同的问题更简洁地描述您的问题。

间隔覆盖问题 1 由一个大间隔(称为(a,b))和一堆子间隔(称为它们(a )组成我,b i ))。我们的目标是用尽可能少的子间隔来覆盖一个大间隔。

Finding the minimal coverage of an interval with subintervals是大约5年前发布的一个问题,它要求一个有效的解决方案,并且接受的答案表明贪婪的解决方案是最佳的。在房间预订的背景下,“贪婪的解决方案”基本上是从期初开始,并始终选择最新结束日期的预订。

当然这个问题的理念是每个“子区间”都是预订,因此我们需要的子间隔越少,预订就越少,因此我们需要的“切换”就越少。


1我实际上并不是100%确定这是正确的名称,但是如果你说“间隔覆盖问题”,那么听众可能会想到同样的事情。