算法
nbdclw
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
HashMap之tableSizeFor方法算法详解
最近在看HashMap的源码的时候,发现有参构造方法会调用tableSizeFor方法来确认容量的大小,tableSizeFor方法里面的算法挺巧妙的,所以专门研究了下,下面跟大家分享下我对tableSizeFor方法的一个理解。 我们先看看方法源码: /** * Returns a power of two size for the given target capacity. */ static final int tableSizeFor(int cap) { int n = cap -原创 2020-09-24 15:30:55 · 897 阅读 · 2 评论 -
教你快速理解雪花算法的原理和java实现
一、简介 雪花算法是Twitter开源的分布式ID生成算法。生成的ID是一个64位的Long类型的数字,是一个全局唯一的ID;当然这64位的全局唯一ID是由时间戳、机器ID、序列号组成的,如果涉及到不同的机房,可以改进下由由时间戳、机房ID、机器ID、序列号组成。具体是如何分配的,如下图所示: 组成部分详解 1、最高位 是符号位,始终为0,因为需要正数; 2、时间戳 第二部分是41位的时间戳,自增的时间戳(毫秒级),最大可以存(2^41 - 1)的毫秒数,差不多可以存69年 3、机房ID 第三部分是5位的原创 2020-09-22 19:11:24 · 611 阅读 · 0 评论
分享