Leetcode509. 斐波那契数(递归和常规两种写法)

问题描述:

斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:

F(0) = 0,F(1) = 1
F(n) = F(n - 1) + F(n - 2),其中 n > 1

给定 n ,请计算 F(n) 。

示例 1:

输入:n = 2
输出:1
解释:F(2) = F(1) + F(0) = 1 + 0 = 1

示例 2:

输入:n = 3
输出:2
解释:F(3) = F(2) + F(1) = 1 + 1 = 2

示例 3:

输入:n = 4
输出:3
解释:F(4) = F(3) + F(2) = 2 + 1 = 3

提示:

  • 0 <= n <= 30

上代码拿去即可运行:

package com.onlyqi.daydayupgo01.test;import java.util.ArrayList;
import java.util.List;public class Test12 {public static void main(String[] args) {System.out.println("============only-qi=======" + fib(3));}public static int fib(int n) {if (n == 0 || n == 1) {return n;}return fib(n - 1) + fib(n - 2);}public static int fib01(int n) {if (n == 0 || n == 1) {return n;}int fist = 0;int two = 1;int tem = 0;for (int i = 2; i < n; i++) {tem = fist + two;fist = two;two = tem;}return tem;}
}

运行结果:

我要刷300道算法题,第118道 。 好久好久没写算法了,最近开始写,先从最简单的开始。希望自己可以坚持下去 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/49769.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

走进数组的奇妙之旅(1)-学习笔记

引言&#xff1a; 在前几篇文章中&#xff0c;我们深入探讨了函数的奥秘。在讲述函数知识的过程中&#xff0c;我们邂逅了一个新的概念&#xff0c;你或许还记得在演示 strcpy函数时&#xff0c;出现的这行代码&#xff1a;char1[20]{0};。当时&#xff0c;你是否感到好奇&…

软考中级网络工程师考什么?应该怎么正确备考

网络工程师软考中级难易度50%&#xff0c;不太难。但是如果准备不足就悬了&#xff0c;赶紧备考起来吧。 网络工程师每年考两次&#xff0c;相比其他的软考考试一年中考的机会又多了一次&#xff0c;而且软考网工也是挺热门的科目&#xff0c;每年很多人报考&#xff0c;相对的…

视觉语言动作模型:从网页知识到机器人控制的实战RT-2

作者&#xff1a; Anthony Brohan, Noah Brown, Justice Carbajal, Yevgen Chebotar, Xi Chen, Krzysztof Choromanski, Tianli Ding, Danny Driess, Avinava Dubey, Chelsea Finn, Pete Florence, Chuyuan Fu, Montse Gonzalez Arenas, Keerthana Gopalakrishnan, Kehang Han…

【深度学习】PyTorch框架(5):Transformer和多注意力机制

1、引言 在本文中&#xff0c;我们将探讨近两年来最具影响力的模型架构之一——Transformer模型。自从2017年Vaswani等人发表的论文《注意力是你所需要的全部》以来&#xff0c;Transformer架构在多个领域持续刷新着性能记录&#xff0c;尤其是在自然语言处理&#xff08;NLP&…

CSI-RS在信道中传输的过程

简单介绍CSI-RS信号生成&#xff0c;在信道中传输和接收的过程 1.载波配置 首先需要配置载波相关的参数 系统带宽和子载波间隔 5G NR中&#xff0c;系统带宽和子载波间隔是两个关键参数&#xff0c;共同决定无线资源的分配和使用 系统带宽 5G NR支持广泛的系统带宽&…

碳酸锂溶液树脂吸附除钙镁的方法和工艺流程

碳酸锂溶液作为一种重要的化工原料&#xff0c;主要用于锂电池的制造和其他化学合成过程。它对纯度有较高要求&#xff0c;因此在制备和处理过程中&#xff0c;去除杂质如钙镁离子是非常关键的步骤。 关于碳酸锂溶液除钙镁的方法&#xff0c;几种常见的处理技术包括沉淀法、离…

C++ | Leetcode C++题解之第264题丑数II

题目&#xff1a; 题解&#xff1a; class Solution { public:int nthUglyNumber(int n) {vector<int> dp(n 1);dp[1] 1;int p2 1, p3 1, p5 1;for (int i 2; i < n; i) {int num2 dp[p2] * 2, num3 dp[p3] * 3, num5 dp[p5] * 5;dp[i] min(min(num2, num3…

解决R语言找不到系统库导致的报错

1、基本需知 1.1、系统库 系统库&#xff08;System library&#xff09;是一组预先编写和编译好的软件模块集合&#xff0c;用于支持操作系统的基本功能和提供一些常见的服务。这些库通常由操作系统或第三方开发者提供&#xff0c;并且在系统安装过程中被预装或者用户可以额…

springboot+vue+mybatis高校宿舍管理系统+PPT+论文+讲解+售后

随着科学技术的飞速发展&#xff0c;各行各业都在努力与现代先进技术接轨&#xff0c;通过科技手段提高自身的优势&#xff1b;对于高校宿舍管理系统当然也不能排除在外&#xff0c;随着网络技术的不断成熟&#xff0c;带动了高校宿舍管理系统&#xff0c;它彻底改变了过去传统…

【Linux】从零开始认识多线程 --- 线程互斥

人生有许多事情 正如船后的波纹 总要过后才觉得美的 -- 余光中 线程互斥 1 线程类的封装1.1 框架搭建1.2 线程启动1.3 线程终止1.4 线程等待1.5 运行测试 2 线程互斥2.1 多线程访问的问题2.2 解决办法 --- 锁2.3 从原理角度理解锁 Thanks♪(&#xff65;ω&#xff65;)&am…

Java语言程序设计——篇七(1)

&#x1f33f;&#x1f33f;&#x1f33f;跟随博主脚步&#xff0c;从这里开始→博主主页&#x1f33f;&#x1f33f;&#x1f33f; 继承 类的继承实战演练 方法覆盖实战演练 &#x1f351;super关键字实战演练 调用父类的构造方法 类的继承 通过类的继承方式&#xff0c;可以…

手机图片如何转化为word文档?分享3种好用的软件。

在数字化时代&#xff0c;手机已经成为我们生活中不可或缺的一部分。随着手机拍照功能的日益强大&#xff0c;我们常常用手机记录下重要的信息和瞬间。但你有没有遇到过这样的烦恼&#xff1a;如何将手机里的图片快速转化为可编辑的Word文档呢&#xff1f;今天&#xff0c;就为…

基于 G6 的交互式过滤镜:探索图谱数据的新视角

本文由ScriptEcho平台提供技术支持 项目地址&#xff1a;传送门 基于 G6 的交互式过滤镜&#xff1a;探索图谱数据的新视角 应用场景 交互式过滤镜是一种强大的工具&#xff0c;它允许用户通过聚焦于图谱中的特定区域来探索和分析数据。它在各种场景中都有应用&#xff0c;…

马来西亚外贸服务器租赁公网带宽费用和测速IP地址性能测试

云服务器马来西亚&#xff08;吉隆坡&#xff09;公网带宽租用费用&#xff0c;马来西亚地域按固定带宽计费1M价格22元1个月、按使用流量计费1GB流量费用是0.529元&#xff0c;马来西亚服务器测试IP地址速度如何&#xff1f;阿里云服务器网aliyunfuwuqi.com整理2024年最新马来西…

AS-V1000系统主要功能介绍:实现视频监控统一接入汇聚

目录 一、系统概述 1、平台简介 2、视频监控统一接入能力 3、功能介绍 二、功能说明 1. 视频监控统一接入汇聚 2. 视频存储、回放和堆叠 3. 实时监控与预警、定位 4. 信息共享与联动、分发 5. 远程监控、管理和控制 三、主要特点 1. 多协议多品牌支持 2. 大容量集…

MQ消息队列+Lua 脚本实现异步处理下单流程,将同步下单改为异步下单

回顾一下下单流程&#xff1a; 用户发起请求 会先请求Nginx,Nginx反向代理到Tomcat&#xff0c;而Tomcat中的程序&#xff0c;会进行串行工作&#xff0c; 分为以下几个操作&#xff1a; 1 查询优惠券 2 判断秒杀库存是否足够 3 查询订单 4 校验是否是一人一单 5 扣减库…

QT信号和信号槽

信号和信号槽 一.信号与槽1.信号和槽的概述1.2.信号的本质1.3.信号的本质 二.信号和槽的使用2.1 连接信号和槽connect()函数原型&#xff1a;参数的说明 三.自定义信号和槽3.1基本语法1.自定义信号槽的书写规范2、自定义槽函数书写规范3.发送信号 3.2带参数的信号和槽 四.信号与…

在VMware16版本中安装ubuntu22.04.4镜像以及ubuntu镜像文件下载,配置更改,安装常用软件

目录 一、Ubuntu镜像文件下载 二、Ubuntu安装过程 三、更换国内镜像 四、安装常用软件 1、编译工具 2、代码管理工具 一、Ubuntu镜像文件下载 1-1、官网https://ubuntu.com/download 1-2、镜像网站快速下载 官网下载速度慢的话可以直接百度各大学的镜像下载网站去下载&…

multiprocessing.Pool创建多进程,导致内存不断攀升的解决方法

问题 使用multiprocessing.Pool创建多进程时&#xff0c;每个进程占用内存不断攀升。 问题描述 原本每个子进程没有占用那么多内存&#xff1a; 第二次读取新一批数据&#xff0c;每个子进程都复制了之前的内存资源&#xff1a; 原因说明 实际上&#xff0c;multiprocessing…

【高可用】利用AOP实现数据库读写分离

最近项目中需要做【高可用】数据库读写分离相关的需求&#xff0c;特地整理了下关于读写分离的相关知识。项目中采用4台数据库&#xff1a;1个master&#xff0c;2个slave&#xff0c;1个readOnly&#xff0c;其中master数据库会自动定时同步到readOnly节点。可以通过中间件(Sh…