Codeforces Round 891 (Div. 3)AC代码


import java.util.Arrays; import java.util.Comparator; import java.util.Scanner; public class Main { public static void main(String[] args) {

LeetCode 65:有效数字 DFA自动机解法


今天刷了一下LeetCode,发现了一道很有感觉的题目,题面如下: 看到这题的第一反应就是,编译原理里学到的自动机!!! 然后我按照记忆里残留的编译原理的知识,开始画图,,,然后wa了。。。 这道坑爹的题目条件居然要自己摸索!!!!然后就开始了痛苦的修bug之路.....(需求都不好好提,这样的甲方

记京东笔试编程题目(JAVA开发)


第一题是给你2,3,5三个数字,问你用这三个数字组成的数字按照大小排序,第n个是多少。(2,3,5,22,23,25,32,33,35,52,53,55,222,223........) 思路:1位数是3个,2位数是9个,k位数是3^k个,用n一路减下去,看看第n个是几位数,如第10个的话,10>3

记华为笔试编程题目(软件开发)


倒霉透了,电脑每次都在关键时候给我整点刺激的,笔试做最后一题的时候,ide卡死了,怕关了笔试页面打不开又不敢重启,硬是靠着记事本+脑内编译做完了。。。。 话说为啥华为阿里这些大企业笔试那么水,发offer却。。。。。 今天的题目比较简单,第一题是让你开个咖啡店,每一杯咖啡5块钱,接下来进来一堆顾客,

分布式一致性算法-RAFT算法的理解和SOFA-RAFT的改进


Raft是一种集群选举策略算法,用于保证集群的一致性。 Raft是将单节点的状态变化转为日志,通过日志同步和日志回放保证一致性。当少数节点挂掉集群依然可以对外提供服务。Raft是一个CP系统,牺牲了部分可用性(当leader切换时,服务短时间内不可用)。

分布式一致性算法-关于Paxos算法的理解


Paxos算法是一种一致性算法,用于在一个分布式多节点系统中确定一个确认的值,这个值可以是一条日志,可以是选举领导者,也可以是自己定义的任意数据。 在paxos中,存在三种角色:提议者、仲裁者、学习者。每个节点可以身兼数职,但至少是其中一个。 Paxos确定的值是一组,曾经决策确定过的值,一个值在当

令牌桶算法和分布式集群分级流控(服务降级)


基本算法-令牌桶 原始算法 令牌桶(Token-Bucket)是目前最常采用的一种流量测量方法,我们可以想象一个存放令牌的容器,预先设定一定的容量。系统按设定的

Java字节码深挖 第四站:JSR-269


前言 本文参考了 Java-JSR-269-插入式注解处理器

Java字节码深挖 第二站:CGLIB


不同于jdk自带的动态代理只能针对接口生成代理类,cglib可以对类实现代理,实现也非常的傻瓜式,我们只需要实现net.sf.cglib.proxy.MethodInterceptor接口,使用方法与jdk自带的动态代理类似。 net.sf.cglib.proxy.MethodInterceptor

Java字节码深挖 第三站:Javassist


javassist是真正的可以对class为所欲为,甚至可以生成真正的class文件,它将字节码操作过程全部封装了起来,我们可以直接使用符合java规范的String直接修改,做到了动态修改代码跟修改字符串一样方便。并且,javassist的接口也简洁明了,操作难度跟反射没什么区别,我就不赘述了,具