oGuaiShuShu12345678 2016-08-29 13:19 采纳率: 0%
浏览 2903

算法的空间复杂度和时间复杂度哪个更重要呢

通常我们在解决一个问题时都有多种方案,但是每个方案各有优劣,往往占用内存更高的,效率也更高,但是内存又很昂贵。面对时间复杂度和空间复杂度,如何抉择呢?

  • 写回答

4条回答 默认 最新

  • hijack00 2016-08-29 13:52
    关注

    一般考虑算法的时候,更多的是指时间复杂度。其实现在内存这种计算资源相比于以前已经很廉价了。以前进行嵌入式开发一般用汇编,用C语言生成的代码往往更大,不利于嵌入式应用场景。但是,随着存储空间越来越多,使用C语言也没有什么不可以了。甚至现在有人直接用C++做嵌入式开发。
    所以现在总体的趋势是,对空间复杂度的要求往往都不会太高,而对时间复杂度一般都会提出要求。所以一种常见的策略就是以空间换取时间。例如,将更多的程序运行的中间结果缓存在内存中,这样无疑比每次写入文件下次再从文件读取更有效率。
    就我目前了解到的情况,一般在应聘面试时一般可能会对空间复杂度做出要求。例如,将一个数组反序输出,一种常见的方案是借助栈来实现。但是如果面试官规定不许利用额外的空间,那这种方式就不能用了。

    评论

报告相同问题?

悬赏问题

  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥15 python天天向上类似问题,但没有清零
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?