讨论算法复杂性(内存占用,计算量多少)对计算机软件设计的影响
1条回答 默认 最新
- 爱晚乏客游 2021-06-18 10:18关注
软件设计最好的就是时间和空间复杂度越小越好,特别是时间复杂度,很多情况下宁愿使用空间来换时间的。一个应用对于用户来说,不怎么会关心说你内存占用多了一些,但是一旦你的反应速度慢了,就0.5s来说很多情况下就是无法忍受的事情的。当然,太离谱的空间换时间也是不可取的,应为内存占用多了之后也会卡。
最好的就是常数时间常数空间,或者线性。如果时间复杂度是幂性,特别是幂大于2的情况在处理量比较大的情况下都要想办法用空间来换取时间的,需要将幂降下来,比如变成对数性的或者线性*对数性来保证性能。指数型一般都是不可取的,存在指数爆炸的可能性,复杂度大于指数的基本上在软件上面是无法存在的,这种的问题一般都需要超算了
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
- ¥15 lammps拉伸应力应变曲线分析
- ¥15 C++ 头文件/宏冲突问题解决
- ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
- ¥50 安卓adb backup备份子用户应用数据失败
- ¥20 有人能用聚类分析帮我分析一下文本内容嘛
- ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
- ¥30 python代码,帮调试,帮帮忙吧
- ¥15 #MATLAB仿真#车辆换道路径规划
- ¥15 java 操作 elasticsearch 8.1 实现 索引的重建