【哲理】空间换时间
来源:互联网 发布:php中文网 编辑:程序博客网 时间:2024/04/29 22:25
时间和空间的关系,是霍金这种智商的人要研究的东西,我们只需要知道,在编程时,空间是可以换时间的,时间也是可以换空间的。
李开复在他的自传《世界因你不同》中描述了他小时候在美国学校里的一个故事,老师出了道题:“谁知道1/7等于多少?”小开复马上大声回答:”0.142857,老师和同学们都惊呼开复是个天才,其实事实情况是,开复以前在台湾时就记下了这个答案。这就是一个典型的以空间(存储)换时间的例子。
下面以打印0~40的Fibonacci序列为例,进一步说明空间换时间的概念:
Program A:用递归的方式实现(时间较长)。
int Fiboncci(int n){ if(n <= 1) { return 1; } else return Fiboncci(n-1)+Fiboncci(n-2);}int main(){ int x = 40; printf("The numbers is: n"); for(;x>0;x--) printf("%d, ",Fiboncci(x)); printf("n"); return 0;}
Program B:以空间换时间
int fArry[41] = {1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, 196418, 317811, 514229, 832040, 1346269, 2178309,3524578,5702887, 9227465, 14930352,24157817,39088169,63245986,102334155,165580141, };int Fiboncci(int n){ if(n <= 1) { return 1; } else return fArry[n-1]+fArry[n-2];}int main(){ int x = 40; for(;x>0;x--) printf("%d, ",Fiboncci(x)); printf("n"); return 0;}
在商业上最成功的空间换时间的例子是Google和百度的搜索引擎算法,当我们提交一个搜索请求时,搜索引擎并不是现场给我们搜索,要在这么短的时间内搜索全球数不尽的网页是不可能的,它只是将已经搜索好的网页呈现给我们。
——引自《大话处理器》P174
这两个程序是我自己实现的哦!嘿嘿…
1 0
- 【哲理】空间换时间
- 以空间换时间
- 以时间换空间
- 空间换时间
- 以时间换空间、以空间换时间、垃圾回收
- JDK 源码设计 时间换空间 & 空间换时间
- 代码时间换空间以及空间换时间
- 以空间换时间思想
- 一个空间换时间算法
- 性能优化:空间换时间
- 空间换时间-替换空格
- 丑数(空间换时间)
- 程序空间换时间小例子
- c#内存管理,用空间换时间
- 数据库优化--空间换时间优化
- 空间换时间在问题中的应用
- 以空间换时间经典算法
- 空间换时间一排序算法
- Spark-基础-Spark编译与部署--Hadoop编译安装
- CrashHandler 异常事件处理
- EditText限制输入最大最小值
- 一个PHP程序,同一时刻被请求多次,怎么让它只运行一次?
- 韩顺平Spring框架学习,学习笔记(四)
- 【哲理】空间换时间
- Java设计模式之观察者设计模式
- 简单说一下set,也算是做个笔记
- new的越界访问
- Spark-基础-Spark编译与部署--Spark编译安装
- blender手册快捷键和操作技巧八
- 教师节诗歌朗诵稿集锦
- Android开发工具
- 算法(让人着迷的傅里叶分析)