国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C#面:使用 IEnumerable 實(shí)現(xiàn)斐波那契數(shù)列生成

這篇具有很好參考價(jià)值的文章主要介紹了C#面:使用 IEnumerable 實(shí)現(xiàn)斐波那契數(shù)列生成。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

什么是 斐波那契 豎列:

斐波那契數(shù)列(Fibonacci sequence),又稱黃金分割數(shù)列 [1],因數(shù)學(xué)家萊昂納多·斐波那契(Leonardo Fibonacci)以兔子繁殖為例子而引入,故又稱“兔子數(shù)列”,

其數(shù)值為:1、1、2、3、5、8、13、21、34……

在數(shù)學(xué)上,這一數(shù)列以如下遞推的方法定z義:
F(0)=1,F(xiàn)(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2,n ∈ N*)。

使用 IEnumerable 接口可以實(shí)現(xiàn)斐波那契數(shù)列的生成。IEnumerable 接口提供了一個(gè)迭代器方法 GetEnumerator(),通過(guò)實(shí)現(xiàn)該方法可以返回一個(gè)迭代器對(duì)象,該對(duì)象可以用于遍歷集合中的元素。

下面是使用 IEnumerable 實(shí)現(xiàn)斐波那契數(shù)列生成的示例代碼:

using System.Collections;

namespace Temp
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Fibonacci fibonacci = new Fibonacci(10);
            foreach (var number in fibonacci)
            {
                Console.WriteLine(number);
            }
        }

    }
    /// <summary>
    /// 斐波那契豎列
    /// </summary>
    public class Fibonacci : IEnumerable
    {
        private int _count;
        public Fibonacci(int count)//使用構(gòu)造函數(shù)傳參
        {
            this._count = count;
        }
        public IEnumerator GetEnumerator()
        {
            int a = 0;
            int b = 1;
            for (int i = 0; i < _count; i++)
            {
                yield return a;

                int temp = a;
                a = b;
                b = temp + b;
            }
        }
    }

    /// <summary>
    /// 自定義異常類
    /// </summary>
    public class CustomException : Exception
    {
        public CustomException(string message) : base(message)
        {
            //在此處添加自定義邏輯
        }
    }

}

yield return是一種用于創(chuàng)建迭代器的關(guān)鍵字。它可以在方法中暫停執(zhí)行,并返回一個(gè)序列中的下一個(gè)元素。通過(guò)使用yield return,我們可以按需生成序列的元素,而不需要一次性生成所有元素。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-853512.html

到了這里,關(guān)于C#面:使用 IEnumerable 實(shí)現(xiàn)斐波那契數(shù)列生成的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Java【動(dòng)態(tài)規(guī)劃】斐波那契數(shù)列模型, 圖文思路詳解 + 代碼實(shí)現(xiàn)

    Java【動(dòng)態(tài)規(guī)劃】斐波那契數(shù)列模型, 圖文思路詳解 + 代碼實(shí)現(xiàn)

    本篇總結(jié)動(dòng)態(tài)規(guī)劃中的 斐波那契數(shù)列模型 的解法和思路 按照以下流程進(jìn)行分析題目和代碼編寫 思路分析步驟 代碼編寫步驟 1, 狀態(tài)表示 1, 構(gòu)造 dp 表 2, 狀態(tài)轉(zhuǎn)移方程 2, 初始化+邊界處理 3, 初始化 3, 填表(抄狀態(tài)轉(zhuǎn)移方程) 4, 填表順序 4, 返回結(jié)果 5, 返回值 / OJ鏈接 題目分析

    2024年02月08日
    瀏覽(21)
  • 用Go plan9匯編實(shí)現(xiàn)斐波那契數(shù)列計(jì)算

    用Go plan9匯編實(shí)現(xiàn)斐波那契數(shù)列計(jì)算

    斐波那契數(shù)列是一個(gè)滿足遞推關(guān)系的數(shù)列,如: 1 1 2 3 5 8 ... 其前兩項(xiàng)為1,第3項(xiàng)開始,每一項(xiàng)都是其前兩項(xiàng)之和。 用Go實(shí)現(xiàn)一個(gè)簡(jiǎn)單的斐波那契計(jì)算邏輯 我們將其改進(jìn)一下,用更簡(jiǎn)單的方式描述,同時(shí)把變量的定義提到前邊,并將返回的邏輯拿到函數(shù)末尾。 繼續(xù)改進(jìn) 繼續(xù)改

    2024年01月20日
    瀏覽(19)
  • 使用斐波那契(Fibonacci)數(shù)列來(lái)測(cè)試各大語(yǔ)言的性能

    使用斐波那契(Fibonacci)數(shù)列來(lái)測(cè)試各大語(yǔ)言的性能

    筆者使用最多的語(yǔ)言是C++,目前項(xiàng)目中在使用Go,也使用過(guò)不少其它語(yǔ)言,像Erlang,Python,Lua,C#等等。最近看到C#奪冠,首次榮獲 TIOBE 年度編程語(yǔ)言,同時(shí)也看到網(wǎng)上有不少Java與C#之爭(zhēng)的文章,于是就想要來(lái)做一個(gè)性能比較。 這里參與性能比較的是以下幾門語(yǔ)言:Go、C#、

    2024年01月17日
    瀏覽(26)
  • 基于C語(yǔ)言用遞歸思想實(shí)現(xiàn)斐波那契數(shù)列的函數(shù)設(shè)計(jì)

    用C語(yǔ)言并利用遞歸思想實(shí)現(xiàn)設(shè)計(jì)一個(gè)程序,完成斐波那契數(shù)列的函數(shù)設(shè)計(jì),利用遞歸實(shí)現(xiàn)!

    2024年04月08日
    瀏覽(18)
  • 遞歸以及斐波那契數(shù)列遞歸算法和迭代算法的實(shí)現(xiàn)與分析

    遞歸以及斐波那契數(shù)列遞歸算法和迭代算法的實(shí)現(xiàn)與分析

    程序調(diào)用自身的編程技巧稱為遞歸( recursion) 遞歸有兩個(gè)過(guò)程,簡(jiǎn)單地說(shuō)一個(gè)是 遞的過(guò)程 ,一個(gè)是 歸的過(guò)程 。 遞歸的兩個(gè)必要條件 1. 存在限制條件 ,當(dāng)滿足這個(gè)限制條件的時(shí)候,遞歸便不再繼續(xù)。 2.每次遞歸調(diào)用之后越來(lái)越 接近這個(gè)限制條件 . 遞歸本質(zhì)就是函數(shù)調(diào)用

    2024年02月12日
    瀏覽(17)
  • Python斐波那契數(shù)列

    斐波那契數(shù)列是一個(gè)經(jīng)典的數(shù)學(xué)問(wèn)題,在 Python 中可以使用多種方法來(lái)實(shí)現(xiàn),下面是幾個(gè)常見(jiàn)的實(shí)現(xiàn)方式: 1. 使用遞歸 ```python def fibonacci_recursive(n): ? ? if n = 1: ? ? ? ? return n ? ? else: ? ? ? ? return fibonacci_recursive(n-1) + fibonacci_recursive(n-2) ``` 2. 使用循環(huán) ```python def fibonacci_i

    2024年02月02日
    瀏覽(22)
  • JAVA-斐波那契數(shù)列

    輸入一個(gè)整數(shù) n ,求斐波那契數(shù)列的第 n 項(xiàng)。 假定從 0 開始,第 0 項(xiàng)為 0 。 數(shù)據(jù)范圍 0≤n≤39 樣例

    2024年02月10日
    瀏覽(23)
  • 斐波那契數(shù)列應(yīng)用2

    目錄 斐波那契數(shù)列應(yīng)用2 程序設(shè)計(jì) 程序分析? 系列文章 【問(wèn)題描述】定義如下序列:f(1)=1,f(2)=1;f(n)=(A*f(n-1)+B*f(n-2))mod7? ? ?給定A和B,請(qǐng)你計(jì)算f(n)的值。 【輸

    2023年04月10日
    瀏覽(23)
  • c 斐波那契數(shù)列輸出

    在C語(yǔ)言中,我們可以通過(guò)遞歸或循環(huán)的方法來(lái)實(shí)現(xiàn)斐波那契數(shù)列的輸出。首先,我們需要明白斐波那契數(shù)列的定義:任一項(xiàng)數(shù)字是前兩項(xiàng)的和(最開始兩項(xiàng)均定義為1)。下面是具體的實(shí)現(xiàn)方式。 使用遞歸方法: #include stdio.h int main() { ? ? int m = 0, n = 1, sum; ? ? printf(\\\"請(qǐng)輸入

    2024年02月06日
    瀏覽(21)
  • 矩陣快速冪&斐波那契數(shù)列

    矩陣快速冪&斐波那契數(shù)列

    矩陣快速冪: 快速地求出斐波那契數(shù)列中的每一項(xiàng) 可以快速地求出斐波那契數(shù)列的前n項(xiàng)的和 首先我們來(lái)看如何快速地求出斐波那契數(shù)列的第n項(xiàng) 設(shè) F n = [ f n , f n + 1 ] F_n = [f_n,f_{n+1}] F n ? = [ f n ? , f n + 1 ? ] ,構(gòu)造這一個(gè)行向量,那么對(duì)于此,我們思考 F n F_n F n ? 乘一個(gè)

    2024年02月06日
    瀏覽(18)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包