代码时间换空间以及空间换时间
2016-05-30 17:57
239 查看
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次加(减)法运算和三次赋值运算。 运算次数比第一个多,所以时间效率低,但是没有开辟额外内存,所以空间效率高。
相关文章推荐
- thinkphp 打印下最后执行的sql语句
- Spring 事务声明无效果(转)
- JAVA内部类 (成员内部类、局部内部类、匿名内部类、静态内部类、内部类的继承))
- C++中引用(&)的用法和应用实例
- Python入门:字符串处理
- Jboss 和 SpringMVC
- ThinkPHP(4)——URL伪静态
- leetcode 112 Path Sum C++
- C/C++函数的基本问题
- 使用Git命令行上传本地项目到GitHub
- C# 字符串加密解密方法
- Python操作MySQL数据库
- java栈的简单实现
- myeclipse编辑器设置
- Eclipse 上安装 Maven3插件
- Qt之QStackedLayout
- Spring中bean注入初始化方式—通过注解@Configuration @bean
- windows下安装bpython
- Qt之QStackedLayout
- mongo 启动方式