算法之空间复杂度:衡量一个算法运行需要开辟的额外空间
2025年06月09日
排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序。
2025年06月09日
在进行算法分析时,语句总的执行次数T(n)是关于问题规模n的函数,进而分析T(n)随n的变化情况并确定T(n)的数量级。算法的时间复杂度,也就是算法的时间量度。记作:T(n)=O(f(n))。
2025年06月09日
递归算法应该都不陌生,其实最开始遇见递归应该是在数学课上,类似于f(x)=f(x-1)+f(x+1),f(1)=1,f(2)=4,f(3)=3这种数学题大家应该见过不少,其实思想就是层层递归,最终将目标值用f(1),f(2),f(3)表示。
之前做了一个需求,需要实现类似操作系统文件夹的功能,我们用MySQL数据库记录数据,表字段有4列,分别是id,index_name,pid,is_directory,index_name记录文件或文件的名字,pid记录它的父级id,is_directory标记它是文件还是文件夹。
2025年06月09日
算法在编写成可执行程序的时候,main函数使用这个算法,需要调用一定的空间,消耗一定的时间。算法的效率就是通过空间和时间这两个维度来评判的
时间复杂度:
2025年06月09日
分析一个算法主要看这个算法的执行需要多少机器资源。在各种机器资源中,时间和空间是两个最主要的方面。因此,在进行算法分析时,人们最关心的就是运行算法所要花费的时间和算法中使用的各种数据所占用的空间资源。算法所花费的时间通常称为时间复杂度,使用的空间资源称为空间复杂度。接下来学习如何计算一个算法的时间复杂度和空间复杂度。
2025年06月08日
弹性退休制下,男职工有3种退法:60提前退,60+正点退,63+延迟退。
一般女职工有3种退法:55提前退,55+正点退,58+延迟退。
2025年06月08日
在上一发已经介绍了神经网络的背景以及近些年的发展,当然也是近些年的神经网络的复兴使得大家又一次聚焦在他的身上。那么本次将介绍神经网络的基本概念以及求解算法。
神经网络的来源应该有生物学上的启发,以神经生物学中的神经元的概念为原型。神经元包括细胞体、树突、轴突还有突触(如图),突触是由上一个神经元的树突和当前神经元的轴突构成,神经元之间通过突触相连来传递信息,细胞体用来处理信息。
那么神经网络算法是如何借鉴上面的思想的呢?在神经网络算法中包括三个基本概念
2025年06月08日
简单来说,CNN的目的是以一定的模型对事物进行特征提取,而后根据特征对该事物进行分类、识别、预测或决策等。在这个过程里,最重要的步骤在于特征提取,即如何提取到能最大程度区分事物的特征。如果提取的特征无法将不同的事物进行划分,那么该特征提取步骤将毫无意义。而实现这个伟大的模型的,是对CNN进行迭代训练。
卷积神经网络的结构有很多种,但是其基本架构是相似的,拿LeNet-5为例来介绍,如下图,它包含三个主要的层——卷积层( convolutional layer)、池化层( pooling layer)、全连接层( fully-connected layer)。其中,卷积层,用来学习输入数据的特征表征。卷积层由很多的卷积核(convolutional kernel)组成,卷积核用来计算不同的feature map;