麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

JavaScript 遞歸(棧結構/化歸思想)

2019-11-06 06:12:45
字體:
來源:轉載
供稿:網友

遞歸(1)概念:函數自己調用自己(2)問題存在:容易出現死遞歸,是循環的遞歸下去,內存不夠就報錯:棧溢出
//1.直接調用自己function foo1(){    foo1();}foo1();
//2.間接調用自己function foo2(){    foo3();}function foo3(){    foo4();}function foo4(){    foo2();}foo2();棧結構特點:先入后出
function f1(){    f2();    console.log('f1 finish');}function f2(){    f3();    console.log('f2 finish');}function f3(){    console.log('f3 finish');}f1();//f3 finish     f2 finish     f1 finish//將函數調用稱為調用棧(3)遞歸要實現需要解決兩個問題1> 停止的條件(解決棧溢出)2> 如何調用自己(4) 化歸的思想(轉化為已歸納好的辦法):對問題進行變形、轉化,轉換成已經解決的問題,然后直接調用解決好的方法即可。所謂的遞歸其實就是化歸。(5)如何寫遞歸?1> 假設這個問題已經解決,即使寫一個空函數也假設已經解決2> 根據規律(可能要寫兩到三次),寫出化歸的表達式,即遞歸體3> 確定臨界條件案例:求1,3,5,7,...第n項的值,從0開始
//1> 假設問題已經解決,肯定需要一個函數,帶有一個參數,返回一個結果function foo(n){  }//2> 要求第n項,根據規律就是 第n-1項 + 2就是要求 第n-1項,即 foo(n-1) 就是結果因此得到函數體(遞歸體)function foo(n){     return foo(n-1) + 2;}//3> 確定臨界條件,就是在第0項的時候,值為1function foo(n){     if(n==0) return 1;    return foo(n-1) + 2;}
/** 練習1:求1,2,4,8,16, ...第n項的值,從0開始* *//*1.假設問題已解決,需要一個帶參的函數,有返回值*/function foo(n){    /*3.臨界條件:第0項時值為1*/    if(n==0) return 1;    /*2.規律是第n-1項乘以2*/    return foo(n-1)*2;}/** 練習2:求1到n的和* */function foo2(n){    if(n==1) return 1;    return foo2(n-1)+n;}/** 練習3:fibonacci數列,求第n項* */function foo3(n){    if( n==1 || n==2 ) return 1;    return foo3(n-1)+foo3(n-2);}/** 練習4:求階乘* */function foo4(n){    if(n==1) return 1;    return foo4(n-1)*n;}/** 練習5:求冪,就是n的m次方* */function foo5(n,m){    if(m==0) return 1;    return foo5(n,m-1)*n;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日韩黄色av网站 | www.7777在线 | 成人在线视频精品 | 韩国精品一区二区三区四区五区 | 一级黄色片在线看 | 国产91影院 | jizzzzxxxxx| 在线播放av片 | 欧美成人精品一区二区三区 | 国产精品伦视频看免费三 | 亚洲成人中文字幕在线 | 中文字幕一区在线观看视频 | 毛片视频网站 | a免费视频| 久久久久久久亚洲视频 | 日本网站一区二区三区 | 亚洲午夜激情网 | 91精品国啪老师啪 | 性爱在线免费视频 | 失禁高潮抽搐喷水h | 广州毛片| 成人免费观看在线视频 | 美女福利视频国产 | 精品一区二区久久久久久久网精 | 国产精品久久久久久久亚洲按摩 | 免费观看一级黄色片 | 蜜桃精品视频 | 成人免费观看在线视频 | 久草免费资源视频 | 爱逼av | 亚洲影院在线 | av在线免费网 | 日日做夜夜操 | 国产成人精品一区二区视频免费 | 成人免费毛片在线观看 | 一级做a爰性色毛片免费1 | 久久精品视频1 | japanese xxxxhd | 99最新网址| 欧美日韩一区二区综合 | 免费毛片免费看 |