算法书入门第一天

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

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

 

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

 

以二分查找入门   

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

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

 

引入 大O表示法

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

 

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

 

一些收获:

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

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

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

 

posted @ 2020-03-14 20:54  贼带劲儿  阅读(92)  评论(0)    收藏  举报