zhangshengchao

算法是一组完成任务的命令。

任何代码片段都可视为算法。

 

算法能够提高代码速度,比如GPS就可以通过图算法找到前往目的地的最短路径,也可以用动态规划编写国际跳棋的AI算法等等

 

以二分查找入门   

1~100 找一个数 不可能从1开始一个一个找,这是简单查找 需要的时间复杂度是O(n)

从50开始,小了,那查找范围就缩小一半了。再猜63……。 这就是二分查找  时间复杂度O(logn) **这里log 以2为底

 

引入 大O表示法

比如计算机找一个元素要1毫秒  简单查找速度成倍增长  比较算法运行的时候不可能就是比这个时间长短

 

所以引入大O表示法,其中n为操作数 就是代码运行了几次   同时也是表示了运行的最糟糕的情况

 

一些收获:

算法的速度并不是说运行多少时间,而是操作数的增速

谈论算法速度时,说的是随着输入的增加,运行时间将以什么样的速度增加

在O(log n)比O(n)快,搜索元素越多,前者越快

 

分类:

技术点:

相关文章:

  • 2021-09-23
  • 2021-06-17
  • 2022-01-11
  • 2021-07-10
  • 2021-06-28
  • 2021-12-08
  • 2022-01-18
猜你喜欢
  • 2021-09-27
  • 2021-11-20
  • 2021-12-23
  • 2022-01-13
  • 2021-08-16
  • 2021-12-03
  • 2021-04-10
相关资源
相似解决方案