随笔分类 - 算法
摘要:1.给定一个数组arr,和一个数num,请把小于等于num的数放在数组的左边,大于num的数放在数组的右边。要求额外空间复杂度O(1),时间复杂度O(N) /** * 给定一个数组arr,和一个数num,请把小于等于num的数放在数组的左边, * 大于num的数放在数组的右边。要求额外空间复杂度O(
阅读全文
摘要:master公式 T(N) = a*T ( N/b ) + O (N^d) 当log(b,a) > d => 复杂度为O ( N^log(b,a) ) 当log(b,a) = d => 复杂度为O ( N^d * logN ) 当log(b,a) < d => 复杂度为O ( N^d ) 关于mas
阅读全文
摘要:1.认识时间复杂度 常数时间的操作:一个操作如果和数据量没有关系,每次都是固定时间内完成的操作,叫做常数操作。时间复杂度为一个算法流程中,常数操作数量的指标。常用O(读作big O)来表示。具体来说,在常数操作数量的表达式中,只要高阶项,不要低阶项,也不要高阶项的系数,剩下的部分如果记为f(N),那
阅读全文
摘要:最近测试team在测试过程中反馈部分接口需要做一定的限流措施,刚好我也回顾了下限流相关的算法。常见限流相关的算法有四种:计数器算法, 滑动窗口算法, 漏桶算法, 令牌桶算法 1.计数器算法(固定窗口) 计数器算法是使用计数器在周期内累加访问次数,当达到设定的阈值时就会触发限流策略。下一个周期开始时,
阅读全文