码迷,mamicode.com
首页 > 编程语言 > 详细

01. 算法介绍与列表查询

时间:2018-06-03 12:40:49      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:hello   ima   image   形式   列表   http   空间复杂度   nlog   运行时   

作为自学的总结,本部分包括基本的算法介绍和***(以后补)

Part one.

* 算法的基本概念

 一个计算过程,解决问题的方法

* 相关复习

 递归:自己调用自己,并且有结束条件

* 两个基本属性

 时间复杂度:用来评估算法运行效率的一个东西(所用时间)

       类比生活中的一些事情,比如:眨眼——一瞬间、口算题——几秒、烧水——几分钟

       自己总结来说就是不同数量级的时间计量单位。

       print(‘Hello World‘)             O(1)   注意:此种形式即使多行,时间复杂度不变

       技术分享图片        O(n)   注释:循环n次则为n

       技术分享图片    O(n2)   注释:循环n*n次

       技术分享图片 O(n3)   注释:循环n*n*n次

       note:数量级意味着在上述过程中,不受一行/几行的影响

       * 时间复杂度时用来估计算法运行时间的一个式子

       * 一般来说,时间复杂度高的算法比复杂度低的算法慢

       * 常见的时间复杂度(按效率排序)

        O(1) < O(logn) < O(n) < O(nlogn) < O(n2) < O(n2logn) < O(n3)

       * 如何一眼判断时间复杂度

        循环减半的过程-> O(logn)

        几次循环就是n的几次方的复杂度

 空间复杂度:用来评估算法内存占用大小的一个式子(所占空间)

       “空间换时间”

01. 算法介绍与列表查询

标签:hello   ima   image   形式   列表   http   空间复杂度   nlog   运行时   

原文地址:https://www.cnblogs.com/april-aaa/p/9090285.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!