复杂度分析:如何分析、统计算法的执行效率和资源消耗
我们都知道,数据结构和算法本身解决的是“快”和“省”的问题,即如何让代码运行得更快,如何让代码更省存储空间。所以,执行效率是算法一个非常重要的考量指标。那如何来衡量你编写的算法代码的执行效率呢?这里就要用到我们今天要讲的内容:时间、空间复杂度分析。
Easter79 Easter79
3年前
Vue 骚技巧,策略模式实现动态表单验证
!(https://oscimg.oschina.net/oscnet/5e0568a314054f2d995c1562bda18f70.png)策略模式(StrategyPattern)又称政策模式,其定义一系列的算法,把它们一个个封装起来,并且使它们可以互相替换。封装的策略算法一般是独立的,策略模式根据输入来调整采用哪个算法。
Chase620 Chase620
3年前
简析限流算法
简析限流算法1.简介限流顾名思义是限制流量,限制流量的目的是为了保障服务稳定运行,避免服务被流量冲垮。当流量超出服务处理能力时,部分请求将会被限流组件拦截。被拦截的请求可能会被丢弃,如果是C端请求,那么这个请求可能会被导向指定的错误页上,而不是生硬的拒绝。这里我们丢
Stella981 Stella981
3年前
Spark机器学习算法
Spark是一个大规模的数据处理引擎,集成了SQL查询分析,该引擎是用Scala写的,所以一些高级的实现了的算法都是用它进行描述。已知支持的第三方语言有:C【https://github.com/Microsoft/Mobius,Java,Scala,Python,R【http://spark.apache.org】一般性理解:Spark
Stella981 Stella981
3年前
SOFA 源码分析 — 负载均衡和一致性 Hash
!(https://oscimg.oschina.net/oscnet/76a9ee48bb4c7f7b344343922f049224d4d.png)前言SOFA内置负载均衡,支持5种负载均衡算法,随机(默认算法),本地优先,轮询算法,一致性hash,按权重负载轮询(不推荐,已被标注废弃)。一起看看他们的实现(重点还是一致性
Stella981 Stella981
3年前
JVM垃圾回收算法
一、如何判断对象时候需要回收1.引用计数法        给对象添加一个引用计数器,每当有一个地方引用它,计数器加1;引用失效时,计数器减1。计数器为0的对象就表示不可用。      优点:效率高,实现简单。      缺点:对象间如果存在循环引用的情况,就会导致计数器不可能为0,计数器无法通知GC进行回收。2.可达性分析算法
遗传算法介绍
遗传算法(GeneticAlgorithm,GA)起源于对生物系统所进行的计算机模拟研究。它是模仿自然界生物进化机制发展起来的随机全局搜索和优化方法,借鉴了达尔文的进化论和孟德尔的遗传学说。