zoukankan      html  css  js  c++  java
  • JavaScript生成斐波那契数列

    常规写法

    https://cn.bing.com/search?q=js+fibonacci+sequence&pc=MOZI&form=MOZSBR

    //Fibonacci
    function fibonacci(n) {
      var array = [0, 1];
    
      for (var i = 2; i <= n; i++) {
        array.push(array[i - 1] + array[i - 2]);
      }
    
      return array[n];
    }
    var n = 6;
    var ans = fibonacci(n);
    console.log(ans);

    生成器

    https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Generator

    function* idMaker() {
        var index = 0;
        while(true)
            yield index++;
    }
    
    var gen = idMaker(); // "Generator { }"
    
    console.log(gen.next().value); // 0
    console.log(gen.next().value); // 1
    console.log(gen.next().value); // 2
    // ...

    生成器函数+斐波那契数列

    http://cwestblog.com/2011/07/28/javascript-fibonacci-generator-function-and-alternative/

    function* fib() {
      var temp, num1 = 0, num2 = 1;
      while (1) {
        yield num1;
        temp = num1;
        num1 = num2;
        num2 += temp;
      }
    }
     
    // fibonacci generator function
    var genFib = fib();
     
    // Print the first ten numbers in the fibonacci sequence.
    for (var arr = [], i = 0; i < 10; i++) {
      arr.push(genFib.next());
    }
    alert("1st 10 fibonacci sequence numbers:
    " + arr.join("
    "));
  • 相关阅读:
    C语言点滴
    随便记点什么
    STL的使用
    Linux下OTG支持USB摄像头
    socket编程实战-调试
    socket编程实战-bind端口占用问题
    socket编程实战-tcp_tw_recycle问题
    socket编程实战-connect超时问题
    BT[3]-BLE广播详解
    BT[2]-BLE初体验:心率计
  • 原文地址:https://www.cnblogs.com/lightsong/p/9420753.html
Copyright © 2011-2022 走看看