现在位置: 首页 > 算法 > 文章
2020年01月08日 算法 ⁄ 共 1152字 评论关闭
  empty()函数是PHP中的一个内置函数,用于检查变量是否为空。语法为empty (var),当var存在且具有非空的非零值时返回FALSE,否则返回TRUE。   php empty()函数怎么用?   empty() 函数用于检查一个变量是否为空。   语法:   empty (var)   参数:此函数接受单个参数,如上面的语法所示   var:用于检查它是否为空的变量。   返回值:当var存在且具有非空的非零值时返回FALSE。否则返回TRUE。   empty() 判断...
阅读全文
2020年01月08日 算法 ⁄ 共 970字 评论关闭
线性时间排序算法   给定含n个元素的输入序列,任何比较排序在最坏情况下都需要Ω(nlogn)次比较来进行排序。合并排序和堆排序在最坏情况下达到上界O(nlogn),它们都是渐进最优的排序算法,快速排序在平均情况下达到上界O(nlogn)。   本文介绍的三种以线性时间运行的算法:计数排序、基数排序和桶排序,都用非比较的一些操作来确定排序顺序。因此,下界Ω(nlogn)对它们是不适用的。   计数排序(CountingSort)假设n个输入...
阅读全文
2020年01月08日 算法 ⁄ 共 1044字 评论关闭
蒙特卡洛算法是什么   蒙特卡罗方法(MonteCarlomethod),也称统计模拟方法,是二十世纪四十年代中期由于科学技术的发展和电子计算机的发明,而被提出的一种以概率统计理论为指导的一类非常重要的数值计算方法。是指使用随机数(或伪随机数)来解决很多计算问题的方法。与它对应的是确定性算法。蒙特卡罗方法在金融工程学,宏观经济学,计算物理学(如粒子输运计算、量子热力学计算、空气动力学计算)等领域应用广泛。 蒙特...
阅读全文
2020年01月08日 算法 ⁄ 共 1199字 评论关闭
  如何增量同步文件,例如一个文本文件有10M,分别存放在A,B两个地方,现在两个文件是完全一样的,但是我马上要在A上对这个文件进行修改,B如何实现自动和A上的文件保持一致,并且网络的传输量最少。 这样的使用场景太多,这里随便列举几个   1.A机器为线上运营的机器,现在需要一台备份的机器B,当A发生宕机的时候,或者硬盘损坏等各种认为非人为原因导致数据不可用时,可以很快从B恢复   2.SVN这样的应用场景,不需要...
阅读全文
2020年01月08日 算法 ⁄ 共 532字 评论关闭
  差分约束系统有两种方式可以求解,最短路和最长路。当我们把不等式整理成d[a]+w=d[b]时,我们求最短路。当求最短路时,我们通常要把各点距离初始化为正无穷,求最短路,把各点距离逐渐减小,直到符合所有不等式。也就是开始各点不符合条件,后来通过减小变得符合了,所以一定是符合条件的最大值。既然是求最大值,并且是减小各点距离,也就是把各点由数轴的右侧向左侧拉,所以我们一定要选择一个最终在数轴最左侧的点,并初...
阅读全文
2020年01月08日 算法 ⁄ 共 975字 评论关闭
  归并排序(MergeSort)是利用"归并"技术来进行排序。归并是指将若干个已排序的子文件合并成一个有序的文件。   归并排序有两种方式:1):自底向上的方法2):自顶向下的方法 自底向上的方法   (1)自底向上的基本思想   自底向上的基本思想是:第1趟归并排序时,将待排序的文件R[1..n]看作是n个长度为1的有序子文件,将这些子文件两两归并,若n为偶数,则得到n/2个长度为2的有序子文件;若n为奇数,则最后一个子文件轮空...
阅读全文
2020年01月08日 算法 ⁄ 共 855字 评论关闭
  在开发接口服务器的过程中,为了防止客户端对于接口的滥用,保护服务器的资源,通常来说我们会对于服务器上的各种接口进行调用次数的限制。比如对于某个用户,他在一个时间段(interval)内,比如1分钟,调用服务器接口的次数不能够大于一个上限(limit),比如说100次。如果用户调用接口的次数超过上限的话,就直接拒绝用户的请求,返回错误信息。   服务接口的流量控制策略:分流、降级、限流等。本文讨论下限流策略,...
阅读全文
2020年01月08日 算法 ⁄ 共 1302字 评论关闭
  bootstrap方法什么意思?bootstrap方法即自助法。在统计学中,自助法(Bootstrap Method,Bootstrapping,或自助抽样法)是一种从给定训练集中有放回的均匀抽样,也就是说,每当选中一个样本,它等可能地被再次选中并被再次添加到训练集中。   自助法由Bradley Efron于1979年在《Annals of Statistics》上发表。当样本来自总体,能以正态分布来描述,其抽样分布为正态分布;但当样本来自的总体无法以正态分布来描述,则以渐进...
阅读全文
2020年01月08日 算法 ⁄ 共 1359字 评论关闭
  DIRECTORY_SEPARATOR是一个显示系统分隔符的命令,DIRECTORY_SEPARATOR是PHP的内部常量,不需要任何定义与包含即可直接使用。众所周知,在windows下路径分隔符是(当然/在部分系统上也是可以正常运行的),在linux上路径的分隔符是/,这就导致了一个问题;   比如开发机器是windows,有一个图片上传程序,调试机器上指定的上传文件保存目录是:   define(‘ROOT’, dirname(FILE).”upload”)   在本地调试都很正常,但是上...
阅读全文
2020年01月08日 算法 ⁄ 共 1274字 评论关闭
  在Keil中直接预先定义宏USE_STDPERIPH_DRIVER,但是却没有指定宏的值。而在头文件中判断用的是如下代码:   1 #ifdef USE_STDPERIPH_DRIVER   2 #include "stm32f4xx_conf.h"   3 #endif /* USE_STDPERIPH_DRIVER */   由此引发对#if和#ifdef的思考:这两者有什么区别?   1、#ifdef指令说明:如果预处理器已经定义了后面的标识符,那么执行所有指令并编译C代码,直到下一个#else或者#endif出现为止(无论#else和#e...
阅读全文