Php 找到使用托管空间的最佳方式的算法

Php 找到使用托管空间的最佳方式的算法,php,ruby-on-rails,algorithm,sorting,Php,Ruby On Rails,Algorithm,Sorting,我有几个5Gb的托管帐户和数千个文件。 我想创建一个小软件,它将: 在“我的文件”文件夹中创建多个子文件夹 将最佳选择的文件(基于其大小)移动到子文件夹中,以便以最佳方式达到5Gb限制 然后我将把每个文件夹上传到一个单独的5Gb帐户中 我不是以英语为母语的人,我在互联网上找不到正确的算法。有人能帮我吗(搜索什么词,这种算法叫什么名字)?不管它是什么语言,我只是在寻找排序的原则 谢谢对我来说,这听起来像是垃圾箱包装问题,看,使用更大的主机可能比编写此代码更容易、更便宜、更干净。。。但小天狼星在

我有几个5Gb的托管帐户和数千个文件。
我想创建一个小软件,它将:

  • 在“我的文件”文件夹中创建多个子文件夹
  • 将最佳选择的文件(基于其大小)移动到子文件夹中,以便以最佳方式达到5Gb限制
  • 然后我将把每个文件夹上传到一个单独的5Gb帐户中
我不是以英语为母语的人,我在互联网上找不到正确的算法。有人能帮我吗(搜索什么词,这种算法叫什么名字)?不管它是什么语言,我只是在寻找排序的原则


谢谢

对我来说,这听起来像是垃圾箱包装问题,看,使用更大的主机可能比编写此代码更容易、更便宜、更干净。。。但小天狼星在垃圾箱打包方面有自己的观点……试试亚马逊S3之类的服务,忘掉这个问题。RubyonRails有很多用于此类服务的辅助库。5GB是一个很大的容器,如果你用“数千个文件”访问它,我想它们相对较小。即使不太注意发生了什么,你一定是在几十兆的“最佳”包装之内?为什么你关心可能是一个非常小的优化?我支持小天狼星关于垃圾箱包装的评论。装箱是最容易解决的难题之一,至少在启发式和近似算法方面是如此。如果你想自己解决你的问题:首先试试垃圾箱包装的启发式方法!(我认为您不想寻找最佳解决方案)。我没有研究过这个工具,但也许它可以帮助您完成任务:(自述文件讨论了装箱/分区问题;似乎是基于:它推荐fpart而不是fpart本身!)