1,什么是时间复杂度?
一个问题的规模是n,解决这一问题所需算法所需要的时间是n的一个函数T(n),则T(n)称为这一算法的时间复杂度
2,关于时间复杂度:
时间复杂度是一个函数,它定性描述了该算法的运行时间。这是一个关于代表算法输入值的字符串的长度的函数。时间复杂度常用大O符号表述,不包括这个函数的低阶项和首项系数。
3,什么是空间复杂度?
空间复杂度是指执行这个算法所需要的内存空间,也就是对一个算法在运行过程中临时占用存储空间大小的量度
4,关于空间复杂度:
空间复杂度需要考虑在运行过程中为局部变量分配的存储空间的大小,它包括为参数表中形参变量分配的存储空间和为在函数体中定义的局部变量分配的存储空间两个部分。
5,了解 7 种排序方法的时间复杂度与空间复杂度
【小结】
正所谓,鱼和熊掌不可兼得!
时间复杂度和空间复杂度往往是相互影响的。
当追求一个较好的时间复杂度时,可能会使空间复杂度的性能变差,即可能导致占用较多的存储空间;相反的当追求一个较好的空间复杂度时,就可能会使时间复杂度的性能变差,即可能导致占用较长的运行时间。
因此,在编写程序的时候要考虑周全,根据每个语言的特性,算法的功能,来实现代码的最优化。
扫描二维码关注公众号,回复:
9504054 查看本文章
【寄语】
所谓学习,不是一下子什么都会,而是遇到不会的就去搞懂他,之后,懂得捡拾那些不起眼的知识点,你会发现,那些困惑你这么久的东西也不过如此。