#数据结构与算法

平滑加权轮询算法

staticvoidTest1(){varsv=newServerConfig[]{newServerConfig{Name="A",Weight=4},newServerConfig{Name="B",Weight=2},newServerConfig{Name="C",Weight=1}};intindex=0;i...
代码星球 代码星球·2020-07-09

源地址哈希算法

usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Security.Cryptography;usingSystem.Text;namespaceConsole{classProgram{staticvoidMain(string[]args){v...
代码星球 代码星球·2020-07-09

负载均衡算法

1、轮询法  将请求按顺序轮流地分配到后端服务器上,它均衡地对待后端的每一台服务器,而不关心服务器实际的连接数和当前的系统负载。2、随机法   通过系统的随机算法,根据后端服务器的列表大小值来随机选取其中的一台服务器进行访问。由概率统计理论可以得知,随着客户端调用服务端的次数增多,其实际效...
代码星球 代码星球·2020-07-09

vue和react的diff算法的区别

vue和react的diff算法,都是忽略跨级比较,只做同级比较。vuediff时调动patch函数,参数是vnode和oldVnode,分别代表新旧节点。1.vue比对节点,当节点元素类型相同,但是className不同,任务是不同类型元素,删除重建,而react会认为是同类型节点,只是修改节点属性2.vue的列表比...

nginx常用负载均衡算法

nginx常用负载均衡算法有6种:nginx本身支持4种:轮询(roundrobin),加权轮询(weightroundrobin),ip_hash,最小连接(least_conn)第三方模块,支持2种:最快响应时间(fair),url_hash1.轮询(roundrobin)轮询,依次将请求分配到各个后台服务器,默认...

React的diff算法

React的diff算法主要是两个Tree的比较。传统的Treediff算法复杂度是O(n^3),React是算法通过一些策略将复杂度将为O(n).1.优化策略1.网页中的DOM跨层级移动的特别少,可以忽略不计2.相同类型的组件生成相似的树形结构,不同类型的组件生成不同的树形结构3.同一层级的节点,可以通过唯一id来区...
代码星球 代码星球·2020-06-29

轮盘赌算法

如果已知A类对象生成概率为P(A),B类对象生成概率为P(B),C类对象···,K类对象,他们的概率总和为1,问如何在A~K中随机生成一个对象正如下面的轮盘中奖项 所有奖项的概率和为1,转一次轮盘总会抽中其中的一个奖项,问一次轮盘转动产生的奖项是哪个javascrip...
代码星球 代码星球·2020-06-28

洗牌算法-shuffle

数组洗牌,最近直接的想法是从数组随机取出一个元素,放到另一个数组中,但是这样取出的元素会有重复,必须采取一定的方法保证:1.元素不能重复2.元素被抽取的概率相等,即随机性数组洗牌经典算法有两种:1.Fisher-YatesShuffle(复杂度(n^2))数组的删除以及新的copy数组都是耗费时间和空间的。javasc...
代码星球 代码星球·2020-06-28

字符串匹配之Sunday算法

Sunday算法不像KMP算法那么复杂,但是效率又比较高,在KMP之上,下面简单介绍Sunday算法及其实现。Sunday算法由DanielM.Sunday在1990年提出,它的思想跟BM算法很相似:只不过Sunday算法是从前往后匹配,在匹配失败时关注的是文本串中参加匹配的最末位字符的下一位字符。如果该字符没有在模式...

中文转换为完整拼音算法原理分析

最近由于项目需要,对简体中文转拼音的算法作了一些了解,然而在google找到的大多是获得简体中文拼音首字母的算法,好不容易让我找到了一个sunrise.spell的类,专门用于中文转完整拼音,觉得的确做得不错,于是对它的算法作了一些分析,总的来说觉得还是比较简单的,拿出来与大家分享。   ...

VUE温习:内存泄漏、Vue.$set、key作用与虚拟diff算法

一、内存泄漏1、指令绑定了事件,却没有解绑事件,容易产生内存泄漏。(曾经遇到过的案例)2、v-if指令产生内存泄漏,比如v-if删除了父级元素,却没有删除父级元素里的dom片段3、跳转到别的路由,却没有删除产生的dom片段。需要在beforeDestroy()钩子里注销三方插件,销毁定时器等二、Vue.$set1、vu...

图解vue中 v-for 的 :key 的作用,虚拟dom Diff算法

  其实不只是vue,react中在执行列表渲染时也会要求给每个组件添加上key这个属性。  要解释key的作用,不得不先介绍一下虚拟DOM的Diff算法了。  我们知道,vue和react都实现了一套虚拟DOM,使我们可以不直接操作DOM元素,只操作数据便可以重新渲染页面。而隐藏在背后的原理便是其高效的Diff算法。...

详解java中的数据结构

  线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中。本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类。Collection├List│├LinkedList│├ArrayList│└Vector│...

数论算法 剩余系相关 学习笔记 (基础回顾,(ex)CRT,(ex)lucas,(ex)BSGS,原根与指标入门,高次剩余,Miller_Rabin+Pollard_Rho)

注:转载本文须标明出处。原文链接https://www.cnblogs.com/zhouzhendong/p/Number-theory.html  1. 基础回顾  2. 中国剩余定理(CRT)及其扩展  3. 卢卡斯定理(lucas)及其扩展  4. 大步小步算法(BSGS) 及其扩展  5. 原根与指标...

2018牛客网暑假ACM多校训练赛(第十场)H Rikka with Ants 类欧几里德算法

原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-2018-Summer-Round10-H.html  有两只蚂蚁在一个二维平面上走。一开始,他们都在点$(1,0)$的位置。  Rikka布置了三条规定:  1. 第一只蚂蚁不能走过直线$y=cfrac{a}{b}...
首页上一页...6869707172...下一页尾页