亚洲国产区中文,国产精品91高清,亚洲精品中文字幕久久久久,亚洲欧美另类久久久精品能播放

                  族譜網(wǎng) 頭條 人物百科

                  遞歸

                  2020-10-16
                  出處:族譜網(wǎng)
                  作者:阿族小譜
                  瀏覽:509
                  轉(zhuǎn)發(fā):0
                  評(píng)論:0
                  遞歸程序在支持自調(diào)用的編程語(yǔ)言中,遞歸可以通過(guò)簡(jiǎn)單的函數(shù)調(diào)用來(lái)完成,如計(jì)算階乘的程序在數(shù)學(xué)上可以定義為:這一程序在Scheme語(yǔ)言中可以寫(xiě)作:(define(factorialn)(if(=n0)1(*n(factorial(-n1)))))不動(dòng)點(diǎn)組合子即使一個(gè)編程語(yǔ)言不支持自調(diào)用,如果在這語(yǔ)言中函數(shù)是第一類(lèi)對(duì)象(即可以在運(yùn)行期創(chuàng)建并作為變量處理),遞歸可以通過(guò)不動(dòng)點(diǎn)組合子(英語(yǔ):Fixed-pointcombinator)來(lái)產(chǎn)生。以下Scheme程序沒(méi)有用到自調(diào)用,但是利用了一個(gè)叫做Z算子(英語(yǔ):Zcombinator)的不動(dòng)點(diǎn)組合子,因此同樣能達(dá)到遞歸的目的。(defineZ(lambda(f)((lambda(recur)(f(lambdaarg(apply(recurrecur)arg))))(lambda(recur)(f(lambdaarg(apply(recurrecur)a...

                  遞歸程序

                  在支持自調(diào)用的編程語(yǔ)言中,遞歸可以通過(guò)簡(jiǎn)單的函數(shù)調(diào)用來(lái)完成,如計(jì)算階乘的程序在數(shù)學(xué)上可以定義為:

                  這一程序在Scheme語(yǔ)言中可以寫(xiě)作:

                  (define (factorialn)(if (= n0)1(* n(factorial(- n1)))))

                  不動(dòng)點(diǎn)組合子

                  即使一個(gè)編程語(yǔ)言不支持自調(diào)用,如果在這語(yǔ)言中函數(shù)是第一類(lèi)對(duì)象(即可以在運(yùn)行期創(chuàng)建并作為變量處理),遞歸可以通過(guò)不動(dòng)點(diǎn)組合子(英語(yǔ):Fixed-point combinator)來(lái)產(chǎn)生。以下Scheme程序沒(méi)有用到自調(diào)用,但是利用了一個(gè)叫做Z 算子(英語(yǔ):Z combinator)的不動(dòng)點(diǎn)組合子,因此同樣能達(dá)到遞歸的目的。

                  (define Z(lambda (f)((lambda (recur)(f(lambda arg(apply (recurrecur)arg))))(lambda (recur)(f(lambda arg(apply (recurrecur)arg)))))))(define fact(Z(lambda (f)(lambda (n)(if (<= n0)1(* n(f(- n1))))))))

                  這一程序思路是,既然在這里函數(shù)不能調(diào)用其自身,我們可以用 Z 組合子應(yīng)用(application)這個(gè)函數(shù)后得到的函數(shù)再應(yīng)用需計(jì)算的參數(shù)。

                  尾部遞歸

                  尾部遞歸是指遞歸函數(shù)在調(diào)用自身后直接傳回其值,而不對(duì)其再加運(yùn)算。尾部遞歸與循環(huán)是等價(jià)的,而且在一些語(yǔ)言(如Scheme中)可以被優(yōu)化為循環(huán)指令。 因此,在這些語(yǔ)言中尾部遞歸不會(huì)占用調(diào)用堆??臻g。以下Scheme程序同樣計(jì)算一個(gè)數(shù)字的階乘,但是使用尾部遞歸:

                  (define (factorialn)(define (iterproductcounter)(if (> countern)product(iter(* counterproduct)(+ counter1))))(iter11))

                  能夠解決的問(wèn)題

                  1、數(shù)據(jù)的定義是按遞歸定義的。如Fibonacci函數(shù)。

                  2、問(wèn)題解法按遞歸算法實(shí)現(xiàn)。如Hanoi問(wèn)題。

                  3、數(shù)據(jù)的結(jié)構(gòu)形式是按遞歸定義的。如二叉樹(shù)、廣義表等。

                  遞歸數(shù)據(jù)

                  數(shù)據(jù)類(lèi)型可以通過(guò)遞歸來(lái)進(jìn)行定義,比如一個(gè)簡(jiǎn)單的遞歸定義為自然數(shù)的定義:“一個(gè)自然數(shù)或等于0,或等于另一個(gè)自然數(shù)加上1”。Haskell中可以定義鏈表為:

                  dataListOfStrings=EmptyList|ConsStringListOfStrings

                  這一定義相當(dāng)于宣告“一個(gè)鏈表或是空串列,或是一個(gè)鏈表之前加上一個(gè)字符串”??梢钥闯鏊墟湵矶伎梢酝ㄟ^(guò)這一遞歸定義來(lái)達(dá)到。


                  免責(zé)聲明:以上內(nèi)容版權(quán)歸原作者所有,如有侵犯您的原創(chuàng)版權(quán)請(qǐng)告知,我們將盡快刪除相關(guān)內(nèi)容。感謝每一位辛勤著寫(xiě)的作者,感謝每一位的分享。

                  ——— 沒(méi)有了 ———
                  編輯:阿族小譜

                  更多文章

                  更多精彩文章
                  評(píng)論 {{commentTotal}} 文明上網(wǎng)理性發(fā)言,請(qǐng)遵守《新聞評(píng)論服務(wù)協(xié)議》
                  游客
                  發(fā)表評(píng)論
                  • {{item.userName}} 舉報(bào)

                    {{item.content}}

                    {{item.time}} {{item.replyListShow ? '收起' : '展開(kāi)'}}評(píng)論 {{curReplyId == item.id ? '取消回復(fù)' : '回復(fù)'}}

                    回復(fù)評(píng)論
                  加載更多評(píng)論
                  打賞作者
                  “感謝您的打賞,我會(huì)更努力的創(chuàng)作”
                  — 請(qǐng)選擇您要打賞的金額 —
                  {{item.label}}
                  {{item.label}}
                  打賞成功!
                  “感謝您的打賞,我會(huì)更努力的創(chuàng)作”
                  返回
                  打賞
                  私信

                  推薦閱讀

                  · 遞歸
                  語(yǔ)言例子從前有座山,山里有座廟,廟里有個(gè)老和尚,正在給小和尚講故事呢!故事是什么呢?“從前有座山,山里有座廟,廟里有個(gè)老和尚,正在給小和尚講故事呢!故事是什么呢?‘從前有座山,山里有座廟,廟里有個(gè)老和尚,正在給小和尚講故事呢!故事是什么呢?……’”一只狗來(lái)到廚房,偷走一小塊面包。廚子舉起杓子,把那只狗打死了。于是所有的狗都跑來(lái)了,給那只狗掘了一個(gè)墳?zāi)?,還在墓碑上刻了墓志銘,讓未來(lái)的狗可以看到:“一只狗來(lái)到廚房,偷走一小塊面包。廚子舉起杓子,把那只狗打死了。于是所有的狗都跑來(lái)了,給那只狗掘了一個(gè)墳?zāi)?,還在墓碑上刻了墓志銘,讓未來(lái)的狗可以看到:‘一只狗來(lái)到廚房,偷走一小塊面包。廚子舉起杓子,把那只狗打死了。于是所有的狗都跑來(lái)了,給那只狗掘了一個(gè)墳?zāi)?,還在墓碑上刻了墓志銘,讓未來(lái)的狗可以看到……’”正式定義在數(shù)學(xué)和計(jì)算機(jī)科學(xué)中,遞歸指由一種(或多種)簡(jiǎn)單的基本情況定義的一類(lèi)對(duì)象或方法,并規(guī)定其他...
                  · 遞歸論
                  概述:計(jì)算的概念遞歸論所考慮的基本問(wèn)題是,給定一個(gè)從自然數(shù)到自然數(shù)的函數(shù)f,f是否是可以被計(jì)算的?!翱梢员挥?jì)算”,我們先將其當(dāng)作一個(gè)直觀的概念。根據(jù)直覺(jué),人們一般會(huì)認(rèn)為,一個(gè)函數(shù)可以被計(jì)算是存在一個(gè)給定的過(guò)程,接受一個(gè)自然數(shù)n后,該過(guò)程進(jìn)行一定的操作并給出f(n)作為輸出。將計(jì)算這一直觀的概念上升到數(shù)學(xué)層面的形式化定義這一工作是遞歸論的根本,并由哥德?tīng)枴⑶衿?、圖靈、克萊尼和EmilPost等人在1930年代奠定。他們將圖靈可計(jì)算性作為有效計(jì)算的形式化。在遞歸論的基本概念被給定之后,一方面人們將該觀念應(yīng)用于數(shù)學(xué)中,從而證明了一系列自然的問(wèn)題,如字問(wèn)題,以及希爾伯特第十問(wèn)題等問(wèn)題是不可計(jì)算的。另一方面,理論家們進(jìn)一步拓展,開(kāi)始了相對(duì)可計(jì)算性,圖靈度等問(wèn)題的研究。如今,遞歸論仍是數(shù)理邏輯中活躍的領(lǐng)域。歷史遞歸論理論起源自哥德?tīng)?、邱奇、圖靈、克萊尼和EmilPost在1930年代的工作。他們獲得的...
                  · 遞歸語(yǔ)言
                  定義遞歸語(yǔ)言有兩種等價(jià)的主要定義:遞歸語(yǔ)言是在形式語(yǔ)言的字母表上的所有可能的字的集合的遞歸子集。設(shè)S?Σ是一個(gè)語(yǔ)言,M是一臺(tái)圖靈機(jī),若對(duì)于任何字符串ω∈Σ,有ω∈S當(dāng)且僅當(dāng)M接受ωω?S當(dāng)且僅當(dāng)M拒絕ω則稱(chēng)M判定語(yǔ)言S。若存在這樣的M,S就稱(chēng)為圖靈可判定語(yǔ)言。閉包性質(zhì)遞歸語(yǔ)言是在下列運(yùn)算下是閉合的。就是說(shuō),如果L和P是兩個(gè)遞歸語(yǔ)言,則下列語(yǔ)言也是遞歸的:L的Kleene星號(hào)L??-->{\displaystyleL^{*}}L的非刪除(non-erasing)同態(tài)φ(L)L和P的串接L°°-->P{\displaystyleL\circP}并集L∪∪-->P{\displaystyleL\cupP}交集L∩∩-->P{\displaystyleL\capP}L的補(bǔ)集LC{\displaystyleL^{C}\,}差集L??-->P{\displaystyleL-P\,}圖靈可判定語(yǔ)言與圖靈...
                  · 遞歸可枚舉語(yǔ)言
                  形式定義遞歸可枚舉語(yǔ)言定義:設(shè)S?Σ為一個(gè)語(yǔ)言,E是一個(gè)枚舉器,若L(E)=S,則稱(chēng)E枚舉了語(yǔ)言S。若存在這樣的E,S就稱(chēng)為遞歸可枚舉語(yǔ)言。注意,枚舉器E可以以任意的順序枚舉語(yǔ)言L(E),而且L(E)中的某個(gè)串可能會(huì)被E多次重復(fù)地打印。圖靈可識(shí)別語(yǔ)言定義:設(shè)M{\displaystyleM}是一臺(tái)圖靈機(jī),若在輸入串ωω-->{\displaystyle\omega}上M{\displaystyleM}運(yùn)行后可進(jìn)入接受狀態(tài)并停機(jī),則稱(chēng)M{\displaystyleM}接受串ωω-->{\displaystyle\omega}。M{\displaystyleM}所接受的所有字符串的集合稱(chēng)為M{\displaystyleM}所識(shí)別的語(yǔ)言,簡(jiǎn)稱(chēng)M{\displaystyleM}的語(yǔ)言,記作L(M){\displaystyleL(M)}。設(shè)S??-->ΣΣ-->??-->{\displaystyle...
                  · 原始遞歸函數(shù)
                  定義原始遞歸函數(shù)接受自然數(shù)或自然數(shù)的元組作為參數(shù)并生成自然數(shù)。接受n個(gè)參數(shù)的函數(shù)叫做n-元函數(shù)?;驹歼f歸函數(shù)用如下公理給出:常數(shù)函數(shù):0元常數(shù)函數(shù)0是原始遞歸的。后繼函數(shù):1元后繼函數(shù)S,它接受一個(gè)參數(shù)并返回皮亞諾公理給出的后繼數(shù),是原始遞歸的。投影函數(shù):對(duì)于所有n≥1和每個(gè)1≤i≤n的i,n元投影函數(shù)Pi,它接受n個(gè)參數(shù)并返回它們中的第i個(gè)參數(shù),是原始遞歸的。更加復(fù)雜的遞歸函數(shù)可以通過(guò)應(yīng)用下列公理給出的運(yùn)算來(lái)獲得:復(fù)合:給定k元原始遞歸函數(shù)f,和k個(gè)m元原始遞歸函數(shù)g1,...,gk,f和g1,...,gk的復(fù)合,也就是m元函數(shù)h(x1,...,xm)=f(g1(x1,...,xm),...,gk(x1,...,xm)),是原始遞歸的。原始遞歸:給定k元原始遞歸函數(shù)f,和k+2元原始遞歸函數(shù)g,定義為f和g的原始遞歸的k+1元函數(shù),也就是函數(shù)h這里的h(0,x1,...,xk)=f(...

                  關(guān)于我們

                  關(guān)注族譜網(wǎng) 微信公眾號(hào),每日及時(shí)查看相關(guān)推薦,訂閱互動(dòng)等。

                  APP下載

                  下載族譜APP 微信公眾號(hào),每日及時(shí)查看
                  掃一掃添加客服微信