algorithm
-星星-
千万不要在正确的时间干错误的事情,与君共勉!!!
展开
-
如何理解x&(-x)和x&(x-1)
最近看算法题,涉及到两个很经典的位运算:x&(-x):保留二进制下最后出现的1的位置,其余位置置0(即一个数中最大的2的n次幂的因数 x&(x-1):消除二进制下最后出现1的位置,其余保持不变具体分析如下: 我们可以从看待字符串的角度去思考这件事。 二进制下的数字都可以写成(A)1(B)的形式,其中A表示一串01字符串,1表示从右向左的出现的第一个数字1,B表示空(奇数)或者是连续的0(偶数),即:偶数:(A)1(00…0) 奇数:(A)1对于x&(.转载 2021-04-26 17:48:58 · 840 阅读 · 0 评论 -
公钥基本结构(PKI)的概念
作者:[已重置]链接:https://zhuanlan.zhihu.com/p/24954346来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。术语公钥基本结构(PKI)用于描述管制或操纵证书与公钥及私钥的策略、标准和软件。实际上,PKI 是指由数字证书、证书颁发机构 (CA) 以及对电子交易所涉及各方的合法性进行检查和验证的其它注册机构组成的一套系统。...转载 2020-04-10 16:40:30 · 1621 阅读 · 0 评论 -
流量控制算法——漏桶算法和令牌桶算法
一、写在最前轰轰烈烈的双十二已经过去小半个月了,程序猿的我坐在办公桌上思考,双十二这么大的访问量,这群电商是怎么扛住的,接口分分钟会变得不可用,并引发连锁反应导致整个系统崩溃。好吃懒做的小编,被可怕的好奇心驱使着去调研流量控制算法。好奇心害死猫,才有了这篇文章。二、流量控制算法简介流量控制在计算机领域称为过载保护。何为过载保护?所谓“过载”,即需求超过了负载能力;而“保护”则是指当“过...转载 2019-09-16 09:27:59 · 1401 阅读 · 0 评论 -
分布式事务与一致性算法Paxos & raft & zab
说明:以下内容总结自网络1.CAP原理要想数据高可用,就得写多份数据写多分数据就会导致数据一致性问题数据一致性问题会引起性能问题2.一致性模型弱一致性最终一致性(一段时间达到一致性)强一致1、2 异步冗余;3是同步冗余3.扩展服务的方案数据分区: uid % 16数据镜像:让多有的服务器都有相同的数据,提供相当的服务(冗余存储,一般3份为好)4.两种...转载 2019-08-06 10:05:26 · 339 阅读 · 0 评论 -
variable-precision SWAR算法“计算汉明重量”
统计一个位数组中非0位的数量,数学上称作:”Hanmming Weight“,汉明重量SWAR算法计算汉明重量C实现是这样的// 计算32位二进制的汉明重量int32_t swar(int32_t i){ i = (i & 0x55555555) + ((i >> 1) & 0x55555555); i = (i & 0x33...转载 2019-03-07 15:54:03 · 655 阅读 · 0 评论 -
CRC原理详解
参考链接:https://www.cnblogs.com/esestt/archive/2007/08/09/848856.htmlCyclicRedundancyCheck循环冗余检验,是基于数据计算一组效验码,用于核对数据传输过程中是否被更改或传输错误。算法原理假设数据传输过程中需要发送15位的二进制信息g=101001110100001,这串二进制码可表示为代...转载 2019-03-04 21:31:44 · 1290 阅读 · 0 评论 -
关键路径算法演示(AOE网)
例图 如上图,是一个AOE网,点表示状态,边表示活动及其所需要的时间。为了求出关键路径,我们使用一下算法:1.求出到达各个状态的最早时间(按最大计)这个过程是要从源点开始向汇点顺推:V1是源点,其最早开始时间是0。 V2、V3、V4最早时间分别是是6、4、5。 对于V5而言,V2到V5所花费时间是6+1=7,而V3到V5所花费时间是4+1=5。我们要按最大计,也就是V5...转载 2018-10-31 11:51:14 · 639 阅读 · 0 评论 -
最小生成树-Prim算法和Kruskal算法
假设以下情景,有一块木板,板上钉上了一些钉子,这些钉子可以由一些细绳连接起来。假设每个钉子可以通过一根或者多根细绳连接起来,那么一定存在这样的情况,即用最少的细绳把所有钉子连接起来。更为实际的情景是这样的情况,在某地分布着N个村庄,现在需要在N个村庄之间修路,每个村庄之前的距离不同,问怎么修最短的路,将各个村庄连接起来。以上这些问题都可以归纳为最小生成树问题,用正式的表述方法描述为:给定一个无...转载 2018-10-29 11:08:56 · 152 阅读 · 0 评论 -
拓扑排序(BFS,DFS)
版权声明:本文为博主原创文章,转载请标明出处~ https://blog.csdn.net/Love_wanling/article/details/74275773我们用两种方法来做这道题。BFS宽度优先搜索,是说我们每次把没有父亲节点的节点打印。具体操作可以是计算所有节点的入度。将入度为0的节点输出,同时将输出节点的儿子的入度减去一。我们用队列维持入度为0的节点集合。/...转载 2018-09-28 14:04:21 · 1580 阅读 · 0 评论 -
排序算法
1、冒泡排序/** * 冒泡排序 * @author star * @since 9/25/2018 4:40 PM */public class BubbleSort { static int[] arrs={5,4,3,9,7,1,6,8,2}; public static void main(String[] args) { sort()...原创 2018-09-26 11:15:19 · 206 阅读 · 0 评论