题解 | #转置文件的内容#

import java.util.HashMap;
import java.util.Map;

public class Solution {
     /**
     * @Description
     * @Author fucheng
     * @Date 2022-4-11 17:38
     * @Param [n]
     * @return int
     */
//     public int Fibonacci1(int n) {
//         if (n == 0) return 0;
//         if (n <= 2) return 1;
        
//         return Fibonacci1(n - 1) + Fibonacci1(n - 2);
//     }
    
    /**
     * @Description
     * @Author fucheng
     * @Date 2022-4-11 17:38
     * @Param [n]
     * @return int
     */
    public int Fibonacci(int n) {
        if (n == 0) return 0;
        if (n <= 2) return 1;
    
        int result = 0, a2 = 1, a1 = 1;
        for (int i = 3; i <= n; ++i) {
            result = a1 + a2;
            a1 = a2;
            a2 = result;
        }
        
        return result;
    }
    
//     private Map<Integer, Integer> cacheMap = new HashMap<>();
//     /**
//      * @Description
//      * @Author fucheng
//      * @Date 2022-4-11 17:38
//      * @Param [n]
//      * @return int
//      */
//     public int Fibonacci3(int n) {
//         if (n == 0) return 0;
//         if (n <= 2) return 1;
//         if (cacheMap.containsKey(n)) return cacheMap.get(n);
//         int result = Fibonacci3(n - 1) + Fibonacci3(n - 2);
//         cacheMap.put(n, result);
//         return result;
//     }
}
全部评论

相关推荐

点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务