【发布时间】:2014-05-01 19:24:05
【问题描述】:
我正在寻找一组的所有分区。对于包含 12 个数字的集合,没关系,但对于 13,我会出现内存不足异常。 我确信我的算法。它给了我很好的结果和很好的子集数量。对于 1, 2, 3... 12.. 然后我尝试获得 13 并且有问题。
他们有多少:WOLPHRAM STRILING
有什么办法可以增加内存吗?或者至少写一个方法,它会给我关键字 out 动态分配的参数数量?
我正在使用第二篇文章中的代码: Code of partitioning
【问题讨论】:
-
请发布一些代码,您的代码可能使用的内存过多。
-
编辑帖子并添加链接
-
您需要一次将所有分区保存在内存中吗?还是您只需要将它们全部计算为练习?调用
Partitioning.GetAllPartitions的代码在做什么? -
您可以计算所有可能的集合,但是您需要一次将它们全部存储在内存中吗?您可以根据需要生成它们以用于您的问题吗?您可以使用多处理或分布式计算机或云来计算具有不同分区集的部分问题吗?
-
我意识到这些问题不是您要问的,但是如果您在 32 位进程中,除了转移到 64 位进程之外,我认为您将不得不解决优雅递归算法的物理计算限制。