时间和空间不可兼得

鱼和熊掌不能兼得,在算法领域,时间和空间也往往出现不可兼得的情况,需要省时间就要在空间上做些牺牲,要省空间优势就得系统些时间。下面就举一个最近优化算法的实际例子,供以后工作时间中参考。

EXCEL中有2个表格,一个记录历史数据的情况,一个根据当日最新数据计算得到的最新数据。每次历史数据根据当日最新数据计算得到,其中历史数据已经出现的,刷新历史数据;历史数据中没有的进行增加,完成这项工作的2个算法如下。

算法一: 进行2次循环(2个O(n2))比较;

  1. 第一个循环,从历史数据中逐一和最新数据比较,出现过的进行刷新;
  2. 第二个循环,从最新数据中和历史数据逐一比较,没有出现过的增加尽历史数据中

算法二:引入一个标志变量,减少第二次循环的算法复杂度

  1. 在当日的最新数据中引入一个结构变量,在第一次循环(O(n2))查找后记录是否已经找到,第二次循环O(n),查找是否已经找到的标志,没有找到的增加近历史记录表格中;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值