为了账号安全,请及时绑定邮箱和手机立即绑定

推导式是否具有与显式 for 循环相同的渐近复杂性?

推导式是否具有与显式 for 循环相同的渐近复杂性?

缥缈止盈 2023-10-26 16:36:09
在大多数情况下,使用列表/字典推导式在对代码进行计时时可以显着提高性能,但是它会影响算法的渐近复杂度吗?据我了解,差异是由于与显式循环相比推导式的评估方式造成的,但这种差异应该是一个常数因子,在这种情况下,渐近复杂性不会改变,然后随着问题规模的增加,存在最终应该会达到两个版本以相同速度执行的程度。我的想法正确吗?与此同时,当我尝试测试它时,推导式的表现一直优于显式循环,直到我达到内存不足的大小。
查看完整描述

1 回答

?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

很好的问题,但这不是渐近复杂性的工作原理。这并不是说它们会收敛到相同的时间,而是它们都会以相同的方式增长。例如,采用 2*n 和 n 的算法具有相同的渐近复杂度,但前者总是需要两倍的时间。我看不出为什么推导式不会具有相同的复杂性,但您可以通过计时测试来凭经验进行测试。



查看完整回答
反对 回复 2023-10-26
  • 1 回答
  • 0 关注
  • 102 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信