https://blog.csdn.net/u014380165/article/details/75676216 <! flowchart 箭头图标 勿删 论文:Dual Path Networks 论文链接:https://arxiv.org/abs/1707.01629 代码:https:// ...
分类:
编程语言 时间:
2018-11-22 02:42:21
阅读次数:
253
这次整理了一下SPFA算法,首先相比Dijkstra算法,SPFA可以处理带有负权变的图。(个人认为原因是SPFA在进行松弛操作时可以对某一条边重复进行松弛,如果存在负权边,在多次松弛某边时可以更新该边。而 Dijkstra 算法如果某一条边松弛后就认为该边已经是该连接点到源点的最短路径了,不会重复 ...
分类:
编程语言 时间:
2018-11-16 17:37:05
阅读次数:
145
导读 在之前的内容中,我们通过一张图的方式(图👆),从总体上对JVM的结构特别是内存结构有了比较清晰的认识,虽然在JDK1.8+的版本中,JVM内存管理结构有了一定的优化调整。主要是方法区(持久代)取消变成了直接使用元数据区(直接内存)的方式,但是整体上JVM的结构并没有大改,特别是我们最为关心的 ...
分类:
编程语言 时间:
2018-11-15 22:26:07
阅读次数:
159
做OJ需要用到搜索最短路径的题,于是整理了一下关于图的搜索算法: 图的搜索大致有三种比较常用的算法: 迪杰斯特拉算法(Dijkstra算法) 弗洛伊德算法(Floyd算法) SPFA算法 Dijkstra算法使用了广度优先搜索解决赋权有向图或者无向图的单源最短路径问题,算法最终得到一个最短路径树。 ...
分类:
编程语言 时间:
2018-11-15 18:27:24
阅读次数:
229
前言 快速排序相对于插入排序、冒泡排序等排序算法稳定性不高。但快速排序目前来说是基于比较的内部排序中被认为是最好的算法,当N较大且元素为随机分布时,快速排序平均速度最快。在算法竞赛中处理较大且元素较随机的序列时,用冒泡和插入排序很可能会超时,比如N=100000,则时间会>3000ms,这时就要用到 ...
分类:
编程语言 时间:
2018-10-27 18:06:16
阅读次数:
241
本篇将附上扩展欧几里得算法的思想与推导; 对于一个方程$a x+b y=gcd(a,b)$来说,我们可以做如下的推导: 设有$a x_1+b y_1=gcd(a,b)$,同时我们有$b x_2+(a%b) y_2=gcd(b,a%b)$; 对于这个方程组,我们希望知道的是$x_1,x_2,y_1,y ...
分类:
编程语言 时间:
2018-10-19 19:21:05
阅读次数:
748
常见的基础排序有选择排序、冒泡排序和插入排序。众所周知,他们的时间复杂度是 O(n\*n)。 但是,现在要重新认识一下基础排序算法,尤其是“插入排序”:在近乎有序的情况下,插入排序的时间复杂度可以降低到 O(n)的程度。 因此,在处理系 ...
分类:
编程语言 时间:
2018-10-07 13:49:12
阅读次数:
148
参考 "YOLO(You Only Look Once)算法详解" " YOLO算法的原理与实现 " 一、介绍 YOLO算法把物体检测问题处理成回归问题,用一个卷积神经网络结构就可以从输入图像直接预测bounding box和类别概率。YOLO具有如下优点:(1)YOLO的运行速度非常快;(2)YO ...
分类:
其他好文 时间:
2018-09-29 14:42:22
阅读次数:
220
说到神经网络,大家看到这个图应该不陌生: 这是典型的三层神经网络的基本构成,Layer L1是输入层,Layer L2是隐含层,Layer L3是隐含层,我们现在手里有一堆数据{x1,x2,x3,…,xn},输出也是一堆数据{y1,y2,y3,…,yn},现在要他们在隐含层做某种变换,让你把数据灌进 ...
分类:
编程语言 时间:
2018-09-16 16:18:53
阅读次数:
197
Adaboost是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器(强分类器)。Adaboost算法本身是通过改变数据分布来实现的,它根据每次训练集之中每个样本的分类是否正确,以及上次的总体分类的准确率,来确定每个样本的权值 ...
分类:
编程语言 时间:
2018-09-12 13:08:34
阅读次数:
236