黑马程序员技术交流社区

标题: 递归计算整数划分有多少种方法 [打印本页]

作者: Beacon    时间: 2014-10-28 11:18
标题: 递归计算整数划分有多少种方法
自己整理的,可以学习一下递归是如何实现的。另外还可以学一些基本算法的思想。
  1. int f(int n, int m)
  2. {
  3.         if(n==1 || m==1)
  4.                 return 1;
  5.         if(n < m)
  6.                 return f(n, n);
  7.         if(n == m)
  8.                 return 1 + f(n, m-1);
  9.         else
  10.                 return f(n-m, m) + f(n, m-1);

  11. }
  12. int main(void)                //整数划分,计算整数划分有多少种方法
  13. {
  14.         int n = 6;
  15.         int m = 2;
  16.         printf("%d ", f(n, m));
  17.         return 0;
  18. }
复制代码







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2