![](https://img-blog.csdnimg.cn/36284047d43e477da509d0b57424eaca.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法
文章平均质量分 92
算法的学习与应用
小七在路上
素数
展开
-
时间复杂度和空间复杂度(详解版)
在学习具体的数据结构和算法之前,每位初学者都要掌握一个技能,即善于运用时间复杂度和空间复杂度来衡量一个算法的运行效率。所谓算法,即解决问题的方法。同一个问题,使用不同的算法,虽然得到的结果相同,但耗费的时间和资源肯定有所差异。就比如拧一个螺母,扳手和钳子都可以胜任,但使用钳子拧螺母肯定没有扳手的效率高。图 1 解决问题的方式有多种这也就意味着,如果解决问题的算法有多种,我们就需要从中选出最好的一个。那么,怎么判断哪个算法更好(或者更优)呢?“好”算法的标准解决一个问题的方法可.转载 2021-11-08 15:46:38 · 436 阅读 · 0 评论 -
UidGenerator算法组件
简介UidGenerator是Java实现的, 基于Snowflake算法的唯一ID生成器。UidGenerator以组件形式工作在应用项目中, 支持自定义workerId位数和初始化策略, 从而适用于docker等虚拟化环境下实例自动重启、漂移等场景。 在实现上, UidGenerator通过借用未来时间来解决sequence天然存在的并发限制; 采用RingBuffer来缓存已生成的UID...转载 2019-10-25 15:18:06 · 428 阅读 · 0 评论 -
SnowFlake算法
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移到Cassandra,因为Cassandra没...转载 2019-10-25 15:10:05 · 497 阅读 · 0 评论