斐波那契非递归解法

来源:互联网 发布:sql 去掉重复的行 编辑:程序博客网 时间:2024/04/29 07:00
/*************************** *  斐波那契非递归输出 *  blog:http://blog.csdn.net/kangquan2008 *  author:huangkq1989 *  这是一道面试题来的,应该说很简单, *  但是在面试的时候面试官说如果这个 *  函数要调用一百万次,问怎么优化, *  但是没想到,其实可以打表! *  不过我的代码是否还有可以其他优化方式呢? * ************************/#include <stdio.h>#include <stdlib.h>int get_fabonich(int n_th){if(n_th == 1 || n_th == 2)return 1;int a=1,b=1;int result = 0;for(int i=3; i<=n_th; i++){result = a+b;a = b;b = result;}return result;}int main(){// 1 1 2 3  5  8 13int a;while(1)scanf("%d",&a),printf("%d\n",get_fabonich(a));return 0;}

原创粉丝点击