algorithm - 堆叠矩形以占用尽可能少的空间

标签 algorithm math

我有一个程序可以计算将矩形拼在一起所占用的最小面积。

输入:不同高度和宽度的矩形。
输出:一个包含所有这些矩形的矩形。
规则:矩形不能旋转或滚动,也不能重叠。

我知道这是相关的或可能被定义为装箱问题 (NP-hard)。但是,我为那些算法找到的算法通常会限制例如宽度。我没有这样的限制,唯一的目标是使结果区域尽可能小。

关于什么算法适合获得像样的解决方案的任何指示?

最佳答案

http://www-rcf.usc.edu/~skoenig/icaps/icaps04/icapspapers/ICAPS04KorfR.pdf

显然这个问题比乍看起来要难。这是一个有趣的算法,因为它首先猜测一个解决方案然后对其进行改进,所以如果你不想等待最优解,你可以只运行它进行一定数量的迭代以获得近似解(时间越长你运行它,近似值越好)。

关于algorithm - 堆叠矩形以占用尽可能少的空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/251488/

相关文章:

math - 将 uint8 转为 float32

c++ - 我的功能不会停止返回 -1

algorithm - 为什么 deleteMin of heap 需要 O(logn)?

java - 如何取回十进制整数 - java?

python - 纸笔角色扮演游戏中骰子概率的动态规划

algorithm - 具有唯一值的排序字节数组 - 最大可能压缩

algorithm - 重复使用 (mod 2^32+1)

python - 不需要列表理解乘法

string - 帮忙做个算法

java - 检查闰年 - 不使用除法运算