遞歸

遞歸的概念

函數能夠本身調用本身,稱爲遞歸調用。雖然能夠寫出遞歸,可是我並不知道它是如何得出結果。函數

函數的遞歸調用

方法:spa

  • 1.首先去找臨界值,就是無需計算,就能得到的值
  • 2.找這一次和上一次的關係
  • 3.假設當前函數已經能夠使用了,調用自身計算上一次的運行結果,再寫出此次的運行結果

例如計算1加到n的和code

sum(100) = sum(99) + 100;
sum(n) = sum(n - 1) + n;

須要注意的是,遞歸會在短期內,使內存劇增。blog

function sum(n){
    if (n == 1) {
        return 1;
    }
    return sum(n - 1) + n;
}
alert(sum(100));

結果爲5050。遞歸

運行特色:內存

  • 1.必須有參數
  • 2.必須有return

實例:

經過遞歸,打印n個hello worldget

            function print(n){//必須有參數
                if (n == 0) {
                    return;//必須有return
                }
                document.write("hello world<br>");
                return print(n - 1);
            }
            print(10);

判斷一個函數是否爲閏年it

參數:年份  返回值:是否爲閏年io

            function leapYear(){
                var x = new Date().getYear();
                if (x % 400 == 0 || x % 4 == 0 && year % 100 != 0) {
                    return true;
                } else{
                    return false;
                }
            }
            alert(leapYear());    //今年不是閏年

判斷一個數是否爲素數function

素數: 只能被1和他自己整除的數

            function prime(num){
                var isYes = false;
                for(var i = 2; i < num; i++){
                    if(num % i ==0){
                        isYes = true;    //循環中有一次成功
                        break
                    }
                }
                return !isYes;
            }
            alert(prime(3));
相關文章
相關標籤/搜索