当前位置:  开发笔记 > 小程序 > 正文

找到最佳文件大小组合

如何解决《找到最佳文件大小组合》经验,为你挑选了1个好方法。

这是一个问题,我认为已经有一个算法 - 但我不知道正确的话使用谷歌似乎:).

问题:我想创建一个小程序,我将选择一个包含任何文件的目录(但我的目的是媒体文件,音频和视频).之后,我想以MB输入不得超过的最大文件总大小.此时,您将点击"计算最佳拟合"按钮.

此按钮应比较目录中的所有文件,并提供一个文件列表,这些文件放在一起时最接近最大文件总大小而不超过限制.

这样,您可以在刻录CD或DVD时找出要合并的文件,以便您可以尽可能多地使用光盘.

我试图为此自己提出算法 - 但失败了:(.

有人知道一些很好的算法吗?

提前致谢 :)



1> Alexandre C...:

正如其他人指出的那样,这是一个组合优化问题的背包问题.这意味着您要查找集合的某些子集或置换,以最小化(或最大化)某个成本.另一个众所周知的问题是旅行推销员问题.

这些问题通常很难解决.但如果您对几乎最优的解决方案感兴趣,可以使用非确定性算法,如模拟退火.您很可能无法获得最佳解决方案,但几乎是最佳解决方案.

此链接解释了模拟退火如何解决背包问题,因此您应该感兴趣.

推荐阅读
云聪京初瑞子_617
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有