![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
文章平均质量分 74
weixin_62560203
这个作者很懒,什么都没留下…
展开
-
时间空间复杂度详解
由图可知当求f(n)时会先调用f(n-1)而后一直开辟新的空间直到求出f(n-1)时开辟的空间将会被系统收回,由上图我们易知整个过程中最长的链是靠左侧的那一条,也就是最坏的情况考虑,那在这个过程中开辟的函数栈帧是多少呢 一共n个,为什么不是所有开辟的空间统一计算呢,这是空间复杂度和时间复杂度计算的区别,时间一去不复返,而空间是可以重复利用的。一个算法所花费的时间与其中语句的执行次数成正比例,算法中的基本操作的执行次数,为算法 的时间复杂度。的空间,因为这个也没太大意义,所以空间复杂度算的是变量的个数。原创 2022-10-27 15:58:35 · 312 阅读 · 0 评论 -
KMP算法实现strstr函数
KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt提出的,因此人们称它为克努特—莫里斯—普拉特操作(简称KMP算法)。KMP算法的核心是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速匹配的目的。具体实现就是通过一个next()函数实现,函数本身包含了模式串的局部匹配信息。KMP算法的时间复杂度O(m+n)[1]。原创 2022-09-17 23:10:53 · 128 阅读 · 1 评论 -
qsort函数详解
qsort函数是c语言自带的库函数,我们可以将库函数当作一个黑盒子不管它的实现,利用正确的方法即可实现功能,可以对任意的数组类型进行排序。原创 2022-09-08 00:12:30 · 493 阅读 · 1 评论