我需要一个算法来生成所有可能的正数分区,我想出了一个(作为答案发布),但它是指数时间.
该算法应该返回所有可能的方式,数字可以表示为小于或等于其自身的正数之和.例如,对于数字5,结果将是:
所以我的问题是:有更高效的算法吗?
编辑:问题的标题是"数字的总和分解",因为我真的不知道这叫什么.ShreevatsaR指出它们被称为"分区",所以我相应地编辑了问题标题.
algorithm numbers decomposition
algorithm ×1
decomposition ×1
numbers ×1