首页 / JAVA / 如何用Java计算Lucas数
如何用Java计算Lucas数
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了如何用Java计算Lucas数,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1136字,纯文字阅读大概需要2分钟。
内容图文
![如何用Java计算Lucas数](/upload/InfoBanner/zyjiaocheng/730/1607968ddace4332bb4666170e2a7f61.jpg)
嘿伙计们,我是一名初学程序员,需要在java中编写一个应用程序来编写一个数字,然后输出前n个Lucas数字.例如,当输入7时,它输出:2,1,3,4,7,11,18.
为了清楚起见,卢卡斯数字被定义为:
如果n = 0,则为2
如果n = 1,则为1
如果n> 1,则L(n-1)L(n-2)
我真的不确定如何在java中编程.因为我无法将其翻译成java代码.我已经考虑了一段时间,但仍然无法弄明白.此外,当我有计算第N个卢卡斯数的代码时,我现在将如何输出所有第一个Lucan数字直到第N个数字.你们中的一些人可以帮助我以正确的方式获取或给我提示吗?非常感谢!
解决方法:
你对卢卡斯数的定义是递归的,即,为了计算第N个卢卡斯数,你需要知道第N-1和N-2.
一个天真的方法是这样做
public int lucas(int N) {
if( N == 0 ) return 2;
if( N == 1 ) return 1;
return lucas(N-1) + lucas(N-2);
}
但是,你只需打印数字,不是吗?实际上,这很容易.
int L2 = 2;
int L1 = 1;
for( int i = 2; i <= N; i++ ) {
int L = L1 + L2;
print(L); //or whatever output function you have
L2 = L1;
L1 = L;
}
这个想法是保持最后两个数字,你需要计算接下来的两个数字,总是在手边.
PS:这些Lucas数字就像具有不同起始值的Fibonacci数字一样,因此Fibonacci数的任何算法都可以.如果你真的擅长数学,你甚至可以尝试为卢卡斯数找到一个封闭的公式,但它肯定超出了高中数学(搜索标签将是“具有常系数的线性差分方程”).
内容总结
以上是互联网集市为您收集整理的如何用Java计算Lucas数全部内容,希望文章能够帮你解决如何用Java计算Lucas数所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。