zoukankan      html  css  js  c++  java
  • 关于递归调用和递推的简单讲解

    递归说白了,就是从后向前推导,直到找到确定的值才终止查找,
    然后在从查找到的结果往后推,求出你所要求的值!!
    递推就是从已知直接向后推,直到找到你要的结果后才终止!!
    下面我用两个简单的例子来说明他们俩的区别:
    求n!的值?
    递归

    #include<iostream>
    using namespace std;
    int main()
    {
     __int64 f(int m);
     int n;
     while(cin>>n)
     {
      printf("%I64d\n",f(n));
     }

     return 0;
    }

     递推代码:

    #include<iostream>
    using namespace std;
    int main()
    {
     int n,sum;
     while(cin>>n)
     {
         sum=1;
      for(int i=1;i<=n;i++)
                sum=sum*i;
       cout<<sum<<endl;
     }
     return 0;
    }

    __int64 f(int m)
    {
     if(m==1||m==0)
       return 1;
     return m*f(m-1);

     
    }

  • 相关阅读:
    浅谈最长上升子序列(LIS)
    浅谈树链剖分
    数字计数
    windy数
    骑士(树形dp)
    旅游规划
    皇宫看守
    k8s安装报错
    linux文件夹存储潜规则
    搭建覆盖率测试环境
  • 原文地址:https://www.cnblogs.com/xiohao/p/2779546.html
Copyright © 2011-2022 走看看