整数的划分

很久以前的一份作业,似乎今年3月份时做的,都忘了思路了……

编程求某一个正整数的所有划分数。如输入6,则输出:

6 = 5+1
6 = 4+2
6 = 4+1+1
6 = 3+3
6 = 3+2+1
6 = 3+1+1+1
6 = 2+2+2
6 = 2+2+1+1
6 = 2+1+1+1+1
6 = 1+1+1+1+1+1

题目要求大致就是这样子,原题目要求是递归实现,但忘了为何我最后使用了迭代+链表实现了,反正不是自己要交的作业~ 代码如下~

有同学今年修了这门课,他来问我这道题,给他讲了递归版,顺手发上来吧。

递归版

非递归(当时写的好奇怪……好繁琐)

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注