数组-类似斐波那契数列,给出第一个和第二个结点值,求第n个值

server/2024/9/24 16:27:17/

一、问题描述

二、解题方法

可以采用两种方式:

方式1.使用递归,f(n)=f(n-1)+f(n-2);

当n=1时,返回first;当n=2时,返回second;

方式2.从第3个结点开始计算,当计算到第n个结点值的时候结束并返回计算结果。

f(3)=f(2)+f(1);f(4)=f(3)+f(2);f(5)=f(4)+f(3);... 一直计算到f(n);

从执行次数来看,方式1的执行效率比方式2低

三、代码实现

方式1.递归实现 ↓

java">import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param first int整型 * @param second int整型 * @param n int整型 * @return int整型*/public int findNthValue (int first, int second, int n) {//所有节点值的集合就是一个斐波那契数列int res=0;//可以使用递归方式if(n==1){res=first;}else if(n==2){res=second;}else{res=findNthValue(first,second,n-1)+findNthValue(first,second,n-2);}return res;}
}

方式2.遍历计算 ↓

java">import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param first int整型 * @param second int整型 * @param n int整型 * @return int整型*/public int findNthValue (int first, int second, int n) {//所有节点值的集合就是一个斐波那契数列int res=0;//也可以使用遍历方式int icounter=0;int pre1=first,pre2=second;if(n==1){res=first;}else if(n==2){res=second;}else{icounter=3;for(;icounter<=n;icounter++){res=pre1+pre2;pre1=pre2;pre2=res;}}return res;}
}

四、刷题链接

牛牛猜节点_牛客题霸_牛客网


http://www.ppmy.cn/server/44606.html

相关文章

月薪5万是怎样谈的?

知识星球&#xff08;星球名&#xff1a;芯片制造与封测技术社区&#xff0c;星球号&#xff1a;63559049&#xff09;里的学员问&#xff1a;目前是晶圆厂的PE&#xff0c;但是想跳槽谈了几次薪水&#xff0c;都没法有大幅度的增长&#xff0c;该怎么办&#xff1f;“学得文武…

管理node——NVM安装及使用

NVM安装及使用 前言正文下载安装及配置一、卸载原有的node版本&#xff08;很重要&#xff01;&#xff01;&#xff01;&#xff09;- 卸载node- 清除npm相关文件 二、安装nvm&#xff0c;添加镜像1.nvm自定义安装位置2.nodejs版本存放位置- 未解决&#xff0c;无限踩坑- 已解…

【JavaEE进阶】——Spring Web MVC (响应)

目录 &#x1f6a9;学习Spring MVC &#x1f388;返回静态网页 &#x1f388;返回数据ResponseBody &#x1f388;返回html代码片段 &#x1f388;返回JSON &#x1f388;设置状态码 &#x1f388;设置Header &#x1f6a9;学习Spring MVC 既然是 Web 框架, 那么当⽤⼾在…

前端路由原理及hash模式和history模式和Abstract模式

1.前端路由原理&#xff1a; 前端路由的核心在于改变视图的同时不会向后端发出请求&#xff0c;而是去加载路由对应的组件&#xff1b; vue-router是将组件映射到路由&#xff0c;然后在渲染出来&#xff0c;并且实现Hash、History、Abstract这三种模式&#xff0c;一般默认H…

工商银行异地卡兑换泰铢的流程

本文介绍在国内的工商银行&#xff0c;通过现金或银行卡兑换泰国铢等外国货币的纸币或硬币的方法。 最近&#xff0c;准备到泰国旅行&#xff0c;所以需要兑换一些泰铢&#xff0c;防止下飞机到当地后找不到汇率合适、兑换方便的换钱的地方。其中&#xff0c;因为对比发现工商银…

C++|设计模式(二)|简单工厂和工厂方法模式

本文探讨两种广泛使用的创建型模式——简单工厂模式和工厂方法模式&#xff0c;解释他们的实现细节、优势以及应用场景。 在下一篇文章中&#xff0c;我会补充抽象工厂模式&#xff0c;其实工厂模式主要就是为了封装对象的创建过程&#xff0c;如果我们不进行封装&#xff0c;…

ssm超市管理系统java超市进销存管理系统jsp项目

文章目录 超市进销存管理系统一、项目演示二、项目介绍三、系统部分功能截图四、七千字项目文档五、部分代码展示六、底部获取项目源码和七千字项目文档&#xff08;9.9&#xffe5;带走&#xff09; 超市进销存管理系统 一、项目演示 超市进销存管理系统 二、项目介绍 角色分…

0基础学习Mybatis系列数据库操作框架——Mysql的Geometry数据处理之WKB方案

大纲 序列化反序列化完整TypeHandlerSQL XML完整XML Mapper测试代码代码 在《0基础学习Mybatis系列数据库操作框架——Mysql的Geometry数据处理之WKT方案》中&#xff0c;我们介绍WTK方案的优点&#xff0c;也感受到它的繁琐和缺陷。比如&#xff1a; 需要借助ST_GeomFromText…