a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁(yè) > 編程 > C > 正文

c語(yǔ)言 跳臺(tái)階問(wèn)題的解決方法

2020-01-26 16:10:02
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
題目:一個(gè)臺(tái)階總共有n級(jí),如果一次可以跳1級(jí),也可以跳2級(jí)。求總共有多少種跳法,并分析算法的時(shí)間復(fù)雜度。
答:用一個(gè)函數(shù)f(n)來(lái)表示n級(jí)臺(tái)階總的跳法。
1、只有1個(gè)臺(tái)階,則f(1) = 1;
2、有2個(gè)臺(tái)階,則f(2) = 2;
3、當(dāng)有n個(gè)臺(tái)階時(shí),如果第一次跳1級(jí),有f(n-1)種跳法,如果第一次跳2級(jí),有f(n - 2)種跳法,即f(n) = f(n-1) + f(n-2)。
即為Fibonacci序列。
復(fù)制代碼 代碼如下:

#include "stdafx.h"
#include <iostream>
using namespace std;
//循環(huán)
int TotalStep(int n)
{
    if (n <= 0)
    {
        return 0;
    }
    else if (1 == n || 2 == n)
    {
        return n;
    }
    int first = 1;
    int second = 2;
    int total = 0;
    for (int i = 3; i <= n; i++)
    {
        total = first + second;
        first = second;
        second = total;
    }
    return total;
}
//遞歸
int RecurTotalStep(int n)
{
    if (n <= 0)
    {
        return 0;
    }
    else if (n == 1 || n == 2)
    {
        return n;
    }
    else
    {
        return RecurTotalStep(n - 1) + RecurTotalStep(n - 2);
    }
}
int _tmain(int argc, _TCHAR* argv[])
{
    cout<<TotalStep(20)<<endl;
    cout<<RecurTotalStep(20)<<endl;
    return 0;
}

運(yùn)行界面如下:


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 毛片入口 | 日本三级视频在线播放 | 精品无人乱码区1区2区3区 | 亚洲成人三级 | 99视频网 | 亚洲成人久久久 | 亚洲情网站 | 亚洲最大成人免费视频 | 久久一区二区三区四区五区 | 成人网在线| 亚洲高清无专砖区 | 久热中文在线 | 日本亚洲天堂 | 亚洲成人一二三 | 视频一区欧美 | av在线精品| 日本在线一区二区 | 日本色呦呦 | 久久久91精品国产一区二区 | 日韩成人黄色 | a久久免费视频 | 久草青青草 | 亚洲精品电影在线观看 | 福利在线播放 | 多p视频 | 一区二区三区视频免费在线观看 | 欧美一级全黄 | 成人午夜视频在线观看 | 免费一二三区 | 欧美日韩一区二区三区在线观看 | 国产精品色在线网站 | 久久99蜜桃综合影院免费观看 | 国产在线2 | 中文字幕 欧美 日韩 | 国产成人在线视频 | 日韩一区二区三区精品 | 久久精品成人免费视频 | 亚洲精品一区二区三区 | 日本久久伊人 | 在线观看黄 | 91偷拍精品一区二区三区 |