第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

用外行人的話(huà)說(shuō),什么是使用PHP的遞歸函數(shù)

用外行人的話(huà)說(shuō),什么是使用PHP的遞歸函數(shù)

PHP
梵蒂岡之花 2019-06-26 17:02:51
用外行人的話(huà)說(shuō),什么是使用PHP的遞歸函數(shù)有人能用PHP(不使用Fibonacci)用外行人語(yǔ)言和示例向我解釋遞歸函數(shù)嗎?我在看一個(gè)例子,但是斐波納契人完全把我弄糊涂了!預(yù)先謝謝您;-)您在web開(kāi)發(fā)中使用它們的頻率有多高?
查看完整描述

3 回答

?
紅糖糍粑

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超6個(gè)贊

萊曼條款:

遞歸函數(shù)是一個(gè)調(diào)用本身

再深入一點(diǎn):

如果函數(shù)一直在調(diào)用自己,它如何知道何時(shí)停止?您設(shè)置了一個(gè)條件,稱(chēng)為基本情況。基本情況告訴我們的遞歸調(diào)用何時(shí)停止,否則它將無(wú)限循環(huán)。

對(duì)我來(lái)說(shuō),一個(gè)很好的學(xué)習(xí)例子,因?yàn)槲矣泻軓?qiáng)的數(shù)學(xué)背景,階乘..下面的注釋顯示,階乘函數(shù)可能有點(diǎn)過(guò)了,我會(huì)把它放在這里,以防您想要它。

function?fact($n)?{
??if?($n?===?0)?{?//?our?base?case
?????return?1;
??}
??else?{
?????return?$n?*?fact($n-1);?//?<--calling?itself.
??}}

關(guān)于在Web開(kāi)發(fā)中使用遞歸函數(shù),我不親自使用遞歸調(diào)用。我并不認(rèn)為依賴(lài)遞歸是一種糟糕的做法,但它們不應(yīng)該是您的第一個(gè)選擇。如果使用不當(dāng),它們可能是致命的。

雖然我無(wú)法與目錄示例競(jìng)爭(zhēng),但我希望這在一定程度上有所幫助。

檢查這個(gè)問(wèn)題也是有幫助的,在這個(gè)問(wèn)題上,公認(rèn)的答案用非專(zhuān)業(yè)術(shù)語(yǔ)演示了遞歸函數(shù)是如何工作的。盡管OP的問(wèn)題涉及Java,但概念是相同的,



查看完整回答
反對(duì) 回復(fù) 2019-06-26
?
冉冉說(shuō)

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超1個(gè)贊

例如,打印給定目錄的任何子目錄中的每個(gè)文件(如果在這些目錄中沒(méi)有符號(hào)鏈接,這可能會(huì)導(dǎo)致函數(shù)中斷)。打印所有文件的偽代碼如下所示:

function?printAllFiles($dir)?{
????foreach?(getAllDirectories($dir)?as?$f)?{
????????printAllFiles($f);?//?here?is?the?recursive?call
????}
????foreach?(getAllFiles($dir)?as?$f)?{
????????echo?$f;
????}}

其思想是首先打印所有子目錄,然后打印當(dāng)前目錄的文件。這個(gè)想法被應(yīng)用于所有子目錄,這也是對(duì)所有子目錄遞歸調(diào)用此函數(shù)的原因。

如果您想要嘗試這個(gè)例子,您必須檢查特殊目錄。...,否則你會(huì)被困在電話(huà)里printAllFiles(".")一直。此外,您還必須檢查要打印什么以及當(dāng)前工作目錄是什么


查看完整回答
反對(duì) 回復(fù) 2019-06-26
?
茅侃侃

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超21個(gè)贊

遞歸是重復(fù)自身的東西。就像一個(gè)從內(nèi)部調(diào)用自己的函數(shù)。讓我在一個(gè)有點(diǎn)偽的例子中演示一下:

想象一下你和你的朋友們一起喝啤酒,但如果你午夜之前不回家,你的妻子會(huì)給你下地獄的。為此,讓我們創(chuàng)建orderAndDrinkBeer($time)函數(shù),其中$time是午夜,減去您完成當(dāng)前飲料和回家所需的時(shí)間。

所以,到了酒吧,你點(diǎn)了第一瓶啤酒,開(kāi)始喝酒:

$timeToGoHome = '23';  // Let's give ourselves an hour for last call and getting homefunction orderAndDrinkBeer($timeToGoHome) {  // Let's create the function that's going to call itself.
    $beer = New Beer();  // Let's grab ourselves a new beer
    $currentTime = date('G'); // Current hour in 24-hour format

    while ($beer->status != 'empty') {  // Time to commence the drinking loop
        $beer->drink();  // Take a sip or two of the beer(or chug if that's your preference)
    }

    // Now we're out of the drinking loop and ready for a new beer

    if ($currentTime < $timeToGoHome) { // BUT only if we got the time
        orderAndDrinkBeer($timeToGoHome);  // So we make the function call itself again!
    } else {  // Aw, snap!  It is time :S
        break; // Let's go home :(
    }}

現(xiàn)在,我們只希望你不能喝足夠的啤酒,以至于你的妻子會(huì)讓你睡在沙發(fā)上,不管你是否準(zhǔn)時(shí)回家

但是的,遞歸就是這樣的。


查看完整回答
反對(duì) 回復(fù) 2019-06-26
  • 3 回答
  • 0 關(guān)注
  • 499 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)