代码时间换空间以及空间换时间

转载 2016年05月30日 17:57:07
void swap(int a, int b)
{
	int c; c=a; a=b;b=a;
}
//--->空优 
void swap(int a, int b)
{
	a=a+b;b=a-b;a=a-b; 
}
//根据以上的题意解释一下以时间换空间,和以空间换时间


第一个,用空间换时间,swap中定义了c,就是在内存中又开辟了一个int内存空间,然后一次swap需要进行三次赋值运算。

第二个,用时间换空间,swap中没有额外的定义变量,也就是没有内存的开辟。但是一共进行了3次加(减)法运算和三次赋值运算。
运算次数比第一个多,所以时间效率低,但是没有开辟额外内存,所以空间效率高。

相关文章推荐

性能优化:空间换时间

问题背景                      在程序开发过程中,我们对于数据的处理,会有一些校验。         校验分为...

以空间换时间经典算法

以前看过一篇文章“优化C代码常用的几招”,作者提到的第一招就是“以空间换时间”,还举了一个例子,由于比较经典,引用一下:计算机程序中最大的矛盾是空间和时间的矛盾,那么,从这个角度出发逆向思维来考虑程序...

sublime text 格式化json

在开发的过程中,json数据是经常使用的。查日志。。但是查到的日志,都是一长串。。之前最长使用的是sojson网站,打开之后,然后格式化json 在模拟数据。但是发现,查的多了,每次都打开浏览器 格式...

数据库设计的三大范式

数据库设计三大范式 为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库...

C语言高效编程的四大秘技之以空间换时间

转自:http://tech.163.com/06/1201/10/318HH45C00091KVA.html 引言: 编写高效简洁的C语言代码,是许多软件工程师追求的目标。本文就...

连载:编写高效代码(8) 空间换时间——我们总是在走,却忘了停留

时间和空间的关系,是霍金这种智商的人要研究的东西,我们只需要知道,在编程时,空间是可以换时间的,时间也是可以换空间的。          李开复在他的自传《世界因你不同》中描述了他小时候在美国学校里...

以空间换时间

以前看过一篇文章“优化C代码常用的几招”,作者提到的第一招就是“以空间换时间”,还举了一个例子,由于比较经典,引用一下: 计算机程序中最大的矛盾是空间和时间的矛盾,那么,从这个角度出发逆向思维来考虑...

【Struct(结构体)杂谈之五】以空间换时间,Struct(结构体)中的成员对齐之道(下)

Struct(结构体)中的成员对齐之道(下) (作者:tcpipstack  出处:http://blog.csdn.net/tcpipstack , 欢迎转载,也请保留这段声明。谢...

公因数与空间换时间思想

问题1.给定一个整数N,那么N的阶乘N!末尾有多少个0呢?例如:N=10,N!=3628800,N!的末尾有两个0。 问题2.求N!的二进制表示中最低位1的位置。 问题3.丑数问题,把只包含因子2...

空间换时间 - 珠心算测验

珠心算测验 时间限制: 1 Sec  内存限制: 128 MB 题目描述 珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。珠心算训练,既能够开发智力,又能够为日常生活带...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)