首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有效的算法来创建一个理想的分布到可能溢出的容器中的组?

有效的算法来创建一个理想的分布到可能溢出的容器中的组?
EN

Stack Overflow用户
提问于 2010-06-14 03:06:59
回答 1查看 249关注 0票数 1

我有几组学生需要分配到固定容量的教室里(比如每个教室有100把椅子)。

每组只能分配到一个教室,即使它超过了容量(即可能有学生站着)

我需要一个算法来进行分配与最小的溢出和不足的教室。

当有大约200个组时,执行这种分配的幼稚算法慢得可怕,其中大约一半的组分布在教室大小的20%以下。

有什么想法可以让我至少找到一些好的起点,让这个算法变得闪电般的快吗?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-06-14 03:11:10

这类似于bin packing problem,它是NP完全的。很难找到一个快速的最优算法,但有可能找到一个快速的接近最优的算法。你可以从贪婪的方法开始-把最大的组放在第一位,然后把他们放在他们适合的最小的空隙中。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3033519

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档