我们正在为在线商店(市场)构建运输API,以根据可以获取订单上所有商品的最佳容器来计算运费。 我们有3种类型的容器:
市场应提供订单中每个项目的尺寸(高度,长度和宽度)。
我需要一个算法来查找每个订单应该使用哪个容器。 请注意,容器只能处理一个订单,但订单可能有多个商品。
答案 0 :(得分:2)
这是https://en.wikipedia.org/wiki/Bin_packing_problem,它是NP完全的。存在许多近似算法,有些算法在实践中相当快。
如果您只需要快速而肮脏的近似值,请将您的物品从最大尺寸的尺寸分类到最小尺寸,并尝试将它们贪婪地装在最小的盒子中。