zoukankan      html  css  js  c++  java
  • Java和python实现斐波那契数列的感触

    最近在学python,看到教程里有一节是让python实现斐波那契数列:f(x)= f(x-1)+f(x-2)。用python实现起来十分简单,甚至简单到不易理解。代码如下:
    # 写一个斐波那契数列
    if __name__ == '__main__':
       a,b = 0,1
       while b < 10:
           print(b)
           a,b = b,a+b
           #结果: 1 1 2 3 5 8
    
    
    • 如上,python仅用一行代码在循环里对两个参数赋值就完成了递归计算。作为初学菜鸟实在无法理解,后来想用Java做斐波那契数列对比学习下。代码如下:
    //实现斐波那契数列
    public class test {
        public static void main(String[] args) {
            int a = 0;
            int b = 1;
            while (b < 10){
                System.out.println(b);
                int c = a+b;
                a = b;
                b = c;
            }
        }
    }
    //结果:1 1 2 3 5 8
    
    • 如上,循环中Java需要对两个参数进行三行运算才完成:
    1. 将两个参数加和;
    2. 将原来第二个数赋值给接下来要做加和运算的第一个数;
    3. 将第一次加和值赋值给接下来要做加和运算的第二个数;
    • python:右边的表达式会在赋值变动之前执行。右边表达式的执行顺序是从左往右的
    • 结论:python比Java简单,但需要对数学和基本逻辑及运算比较了解才容易学习、掌握;Java对计算的流程没有过分省略,虽然相对繁琐但易于理解。

  • 相关阅读:
    eclipse/myeclipse介绍
    HDU 5802 Windows 10
    LaTeX test
    数据结构2 静态区间第K大/第K小
    数据结构1 「在线段树中查询一个区间的复杂度为 $O(log N)$」的证明
    HDU 1007 Quoit Design
    HDU 5761 Rower Bo
    hihocoder #1341 Constraint Checker
    HDU #5733 tetrahedron
    hihocoder #1327
  • 原文地址:https://www.cnblogs.com/boluofan/p/12488933.html
Copyright © 2011-2022 走看看