我们正在为在线商店(市场)构建运输 API,以根据可以容纳订单上所有元素的最佳容器计算运输价格。
我们有 3 种类型的容器:
市场应提供订单中每件商品的尺寸(高度、长度和宽度)。
我需要一个算法来找到每个订单应该使用哪个容器。
请注意,容器只能处理一个订单,但该订单可能有多个 item 。
最佳答案
这是https://en.wikipedia.org/wiki/Bin_packing_problem它是NP完全的。存在许多近似算法,其中一些在实践中相当快。
如果您只需要一个快速而肮脏的近似值,请将您的元素从最大尺寸总和到最小尺寸排序,并尝试将它们贪婪地包装在最小的盒子中。
关于algorithm - 基于所选容器的运费计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48806374/