zoukankan      html  css  js  c++  java
  • 数据结构与算法(C++)之递归

    今天来总结下递归:

    #include <iostream>

    using namespace std;

    void doA()
    {
    cout<<"你好啊"<<endl;
    doA();
    }
    void doB()
    {
    cout<<"从前有座山,山里有座庙,庙里有个老和尚,老和尚再给小和尚讲故事:"<<endl;
    doB();
    }
    int main()
    {
    //doA();
    doB();
    return 0;
    }

    /////////////////////////////////////////////////////////////////

    递归的应用:阶乘

    #include <iostream>
    //任何能使用递归(好理解,但是慢,占用大量资源)解决的问题,一定能使用迭代(普通循环)解决
    using namespace std;
    long jiecheng(int n);

    int main()
    {
    //cout<<jiecheng(5)<<endl;
    for(int i=0;i<10;i++)
    {
    cout<<i<<"的!="<<jiecheng(i)<<endl;
    }
    return 0;
    }
    long jiecheng(int n)
    {
    if(n==0)
    return 1;
    else
    return n*jiecheng(n-1);
    }

    下面是阶乘的迭代算法:

    #include <iostream>
    //阶乘的迭代算法
    using namespace std;

    long diedai(int n);
    int main()
    {
    int c=diedai(9);
    cout<<c<<endl;
    for(int a=0;a<10;a++)
    {
    cout<<diedai(a)<<endl;
    }
    return 0;
    }
    long diedai(int n)
    {
    long o=1;
    for(int i=n;i>0;i--)
    {
    o=o*i;
    }
    return o;
    }

    no one and you
  • 相关阅读:
    如何解决js跨域问题
    前端开发群推荐:鬼懿IT
    Highcharts中文API详解
    搜索弹层交互
    js中判断Object、Array、Function等引用类型对象是否相等的方法
    各种之父
    UNIX简介
    MATLAB二维正态分布图
    Albert Einstein says
    GNU简介
  • 原文地址:https://www.cnblogs.com/wslQAQ/p/12329952.html
Copyright © 2011-2022 走看看