• 斐波那契数列


    又没有做出来,知道怎么想的,但是想了半天 思想思路太少了

     1 class Solution {
     2 public:
     3     int Fibonacci(int n) {
     4         if( n > 39)
     5             return -1;
     6         if(n == 1){
     7             return 1;
     8         }
     9         else if ( n ==0 )
    10             return 0;
    11         else{
    12                 int a  = 0, b =1;
    13                 int m = 0;
    14                 for (int i = 1 ;i < n ;i++){
    15                     m =a+b;
    16                     a = b;
    17                     b = m;
    18                 }
    19                 return m ;
    20             }
    21 
    22         }
    23 };

    看了答案 想了很久才出来这么个答案,唉   加油!!

    答案就很给力了  动态规划(什么鬼?  没听说过呀)

     1 class Solution {
     2 public:
     3     int Fibonacci(int n) {
     4         int f = 0, g = 1;
     5         while(n--) {
     6             g += f;
     7             f = g - f;
     8         }
     9         return f;
    10     }
    11 };

    还有一个低配版的::(这个想到了,可惜啊  当时没想透)

     1 if(n<=1){
     2     return n;
     3 }
     4 int[] record = new int[n+1];
     5 record[0] = 0;
     6 record[1] = 1;
     7 for(int i=2;i<=n;i++){
     8     record[i] = record[i-1] + record[i-2];
     9 }
    10 return record[n];

    这此知识点:(1)动态分配数组内存的方法 :

    int[] record = new int[n+1];
    (2)动态规划概念 可惜还是不太懂。
    (3) 可以通过循环赋值来达到叠加的效果

    python的解答方法:
     1 # -*- coding:utf-8 -*-
     2 class Solution:
     3     def Fibonacci(self, n):
     4         # write code here
     5         if n==0 :
     6             return 0
     7         if n ==1:
     8             return 1
     9         a= 0
    10         b=1
    11 
    12         for i in range(1,n) :
    13             m1 = a+b
    14             a = b
    15             b = m1
    16         return m1

    和c  没有多大的差别

  • 相关阅读:
    Vue 中使用 viewerjs
    PS 给照片换背景
    HTML学习-1网页基础知识
    git使用
    Java读取XML配置文件
    Java是如何读到hbase-site.xml 的内容的
    HBASE count方法总结
    Getting Started with Java Development on Docker
    持续集成案例学习:Docker、Java与Maven
    利用MAVEN打包时,如何包含更多的资源文件
  • 原文地址:https://www.cnblogs.com/xiaochige/p/8072701.html
Copyright © 2020-2023  润新知