求斐波那契数列第n个数的效率比较
https://www.bilibili.com/video/BV1sX4y1G7oM?p=5&spm_id_from=pageDriver
1 | 求斐波那契数列第n个数 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | package testpack; /** * 求斐波那契数列第n个数 */ public class T1 { public static void main(String[] args) { // System.out.println(fun1(60)); // System.out.println(fun2(60)); int n = 76 ; // TimeTool.check("fun1", new TimeTool.Task() { // @Override // public void execute() { // System.out.println(fun1(n));//递归 // } // }); TimeTool.check( "fun2" , new TimeTool.Task() { @Override public void execute() { System.out.println(fun2(n)); //循环 } }); } /** * 递归实现 * @param n * @return */ public static long fun1( long n) { if (n <= 1 ) return n; return fun1(n - 1 ) + fun1(n - 2 ); } /** * 循环实现 * @param n * @return */ public static int fun2( int n) { if (n <= 1 ) return n; int first = 0 ; int second = 1 ; for ( int i = 0 ; i < n - 1 ; i++) { int sum = first + second; first = second; second = sum; } return second; } } |
1 | 计时器类 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | package testpack; import java.text.SimpleDateFormat; import java.util.Date; /** * 计时器 */ public class TimeTool { private static final SimpleDateFormat sdf = new SimpleDateFormat( "HH:mm:ss.SSS" ); public interface Task { void execute(); } public static void check(String title, Task task) { if (task == null ) { return ; } title = (title == null ) ? "" : ( "[" + title + "]" ); System.out.println(title); System.out.println( "开始:" + sdf.format( new Date())); long begin = System.currentTimeMillis(); task.execute(); long end = System.currentTimeMillis(); System.out.println( "结束:" + sdf.format( new Date())); double time = (end - begin) / 1000.0 ; System.out.println( "耗时:" + time + "秒" ); System.out.println( "-------------------" ); } } |
https://github.com/godmaybelieve
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理