MD5信息摘要算法 (英语:MD5 Message Digest Algorithm),一种被广泛使用的 "密码散列函数" ,可以产生出一个128位(16 "字节" )的散列值(hash value),用于确保信息传输完整一致。主要增强算法复杂度和不可逆性。 MD5 不可逆,但是具体的简单值的 md ...
分类:
数据库 时间:
2020-01-17 20:59:44
阅读次数:
141
一、斐波那契数列(递推思想,动态规划算法) 二、多源最短路径(给定带权有向图(G = (V,E)),求任意两顶点(Vi,Vj)之间的最短路径) 弗洛伊德算法(Floyd),动态规划思想,算法复杂度大O(N的三次方)。 算法步骤: 1、先定义一个n阶的矩阵,令其对角线的值为0,若存在弧,则对应元素为弧 ...
分类:
编程语言 时间:
2019-12-23 15:00:26
阅读次数:
101
reverse反转,是个比较基础算法。要实现这个方法,从常理考虑可以申请一个新空间,然后将字符串的从尾到头依次填充该空间,最后新空间的内容就是反转后的结果了,这个方式的算法复杂度是O(n),并且还需要重新申请空间。 然而通过对字符串前后对调实现的,方法非常优雅,复杂度一下就降到了O(n/2)。用go ...
分类:
其他好文 时间:
2019-12-17 09:16:33
阅读次数:
337
递归是算法中一种非常重要的思想,应用也很广,小到阶乘,再在工作中用到的比如统计文件夹大小,大到 Google 的 PageRank 算法都能看到,也是面试官很喜欢的考点
最近看了不少递归的文章,收获不小,不过我发现大部分网上的讲递归的文章都不太全面,主要的问题在于解题后大部分都没有给出相应的时间/空间复杂度,而时间/空间复杂度是算法的重要考量!递归算法的时间复杂度普遍比较难(需要用到归纳法等),换句话说,如果能解决递归的算法复杂度,其他算法题题的时间复杂度也基本不在话下。另外,递归算法的时间复杂度不少是不能接受的,如果发现算出的时间复杂度过大,则需要转换思路,看下是否有更好的解法 ,这才是根本目的,不要为了递归而递归!
分类:
其他好文 时间:
2019-12-07 01:26:50
阅读次数:
143
算法复杂度分为时间复杂度和空间复杂度,是衡量一个算法优劣的标准。 时间复杂度是指执行算法所需要的计算工作量;而空间复杂度是指执行这个算法所需要的内存空间。 时间复杂度:参考https://blog.csdn.net/qq_41523096/article/details/82142747理解时间复杂 ...
分类:
编程语言 时间:
2019-12-04 01:22:07
阅读次数:
83
俗称HK算法。和匈牙利算法一个功能,但是复杂度更优。匈牙利算法复杂度O(VE),HK算法复杂度O(sqrt(V)*E)。 但是很容易写崩,别问我怎么知道的。 1 #include<bits/stdc++.h> 2 using namespace std; 3 const int MAXN=500;/ ...
分类:
编程语言 时间:
2019-11-29 00:47:22
阅读次数:
124
[TOC] 博客: "blog.shinelee.me" | "博客园" | "CSDN" 时间复杂度 如何评估一个算法的计算时间? 一个算法的 实际运行时间很难评估 ,当时的输入、CPU主频、内存、数据传输速度、是否有其他程序在抢占资源等等,这些因素都会影响算法的实际运行时间。为了公平地对比不同算 ...
分类:
编程语言 时间:
2019-11-22 19:38:39
阅读次数:
131
word2vec作为神经概率语言模型的输入,其本身其实是神经概率模型的副产品,是为了通过神经网络学习某个语言模型而产生的中间结果。具体来说,“某个语言模型”指的是“CBOW”和“Skip-gram”。具体学习过程会用到两个降低复杂度的近似方法——Hierarchical Softmax或Negati ...
分类:
其他好文 时间:
2019-11-17 12:53:08
阅读次数:
117
描述算法复杂度时,常用o(1), o(n), o(logn), o(nlogn)表示对应算法的时间复杂度,是算法的时空复杂度的表示。不仅仅用于表示时间复杂度,也用于表示空间复杂度。 O后面的括号中有一个函数,指明某个算法的耗时/耗空间与数据增长量之间的关系。其中的n代表输入数据的量。 比如时间复杂度 ...
分类:
编程语言 时间:
2019-11-03 11:16:50
阅读次数:
72
简单的纯板。prim算法适合稠密图,kruskal算法适合简单图。prim算法复杂度O(n^2),n是图中点的个数,kruskal算法复杂度O(eloge),e为图中边的条数。值得一提的是,加入堆优化的prim算法复杂度可达O(nloge)。 这个是用链式前向星存边+堆优化的prim算法。 ...
分类:
编程语言 时间:
2019-11-03 01:23:29
阅读次数:
94