算法
果树芽
这个作者很懒,什么都没留下…
展开
-
分布式ID-雪花算法
SnowFlake 算法,是 Twitter 开源的分布式 id 生成算法。其核心思想就是:使用一个 64 bit 的 long 型的数字作为全局唯一 id。在分布式系统中的应用十分广泛,且ID 引入了时间戳,基本上保持自增的,后面的代码中有详细的注解。 这 64 个 bit 中,其中 1 个 bit 是不用的,然后用其中的 41 bit 作为毫秒数,用 10 bit 作为工作机器 id,12 ...原创 2020-04-18 12:18:20 · 246 阅读 · 0 评论 -
负载均衡算法
一、随机(Random) 二、权重(Weight) 三、轮询(RoundRobin) 四、哈希(Hash) 五、最小活跃数原创 2020-04-18 17:04:54 · 147 阅读 · 2 评论 -
JVM中的GC算法
GC算法整理: 在C/C++中是由程序员自己去申请、管理和释放内存的,因此没有GC的概念。而在Java中,专门有一个用于垃圾回收的后台线程来进行监控、扫描,自动将一些无用的内存进行释放。下面介绍几种常见的GC算法。 引用计数法 Reference Counting 给对象添加一个引用计数器,每过一个引用计数器值就+1,少一个引用就-1。当它的引用变为0时,该对象就不能再被使用。它的实现简单,...转载 2019-06-05 17:26:12 · 130 阅读 · 0 评论 -
快速排序-java实现
快速排序-java实现 快速排序(Quicksort)是对冒泡排序的一种改进。 它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 JAVA实现: public class Test { public static voi...原创 2019-06-02 11:12:12 · 92 阅读 · 0 评论 -
Java GC 垃圾回收器的分类和优缺点
关于Java的垃圾回收器,一直是个头疼的问题,这里简要说明下分类和优缺点,供选择使用。 一、JVM GC 垃圾回收器类型 JVM的垃圾回收器大致分为六种类型: 1、串行:垃圾回收器 (Serial Garbage Collector) (1)串行垃圾回收器在进行垃圾回收时,它会持有所有应用程序的线程,冻结所有应用程序线程,使用单个垃圾回收线程来进行垃圾回收工作。 串行垃圾回收器是...转载 2019-06-28 23:11:18 · 224 阅读 · 0 评论