算法的时间复杂度与CPU速度

m0_37605715 2017-11-24 07:16:35
刚刚在《大话数据结构》上看到这样一段话,百思不得其解。“假设CPU在短短几年内,速度提高了100倍。而我们的某个算法本可以写出时间复杂度是O(n)的算法,却写成了O(n^2)的程序,仅仅因为容易想到,也容易写。即在O(n^2)的时间复杂度程序下,速度其实只提高了10(根下100=10)倍。而对于O(n)时间复杂度的算法来说,那才是真的100倍。”
请各位指点迷津!!!
...全文
549 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2020-08-09
  • 打赏
  • 举报
回复
我也觉得这儿有点问题,假设CPU速度提升之前,执行一条指令需要1s,那么O(n)需要n*1s,也就是ns,O(n^2)需要n^2s,现在CPU速度提升了100倍,那么执行一条指令只需要0.0.1s,则O(n)需要n*0.01s,O(n^2)需要n^2*0.01s,O(n)在CPU速度提升100倍之后,其速度提升了n/0.01n倍,结果是100没错;O(n^2)在CPU速度提升100倍之后,其速度也是提升了100倍...不知道是不是我理解有问题

33,006

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧