算法
文章平均质量分 83
Java盘鱼宴
这里是一位自学Java的小菜鸡,自己整理了很多针对Java入门、java小白的资料,欢迎大家来白嫖,谢谢大家支持~
展开
-
算法入门 - 链表的实现及应用(Java版本)
之前我们学习了动态数组,虽然比原始数组的功能强大了不少,但还不是完全纯动态的(基于静态数组实现的)。这回要讲的链表则是正儿八经的动态结构,是一种非常灵活的数据结构。链表的基本结构链表由一系列单一的节点组成,将它们一个接一个地链接起来,就形成了链表。链表虽然没有长度上的限制,但是 节点之间需要储存关联关系 。所以可以很自然地想到,你得知道前一个元素是啥,才能在它后面继续接新的元素。如果后面没元素可接,那么就在链表尾部接一个空值,代表链表结束。我们从一个空链表开始,依次往链表中添加元素:1.初始链表为原创 2021-08-28 15:47:01 · 222 阅读 · 0 评论 -
算法入门 - 动态数组的实现(Java版本)
静态数组Java中最基本的数组大家肯定不会陌生:int[] array = new int[6];for (int i = 0; i < array.length; i++){ array[i] = 2 * i + 1;}通过循环把元素放入指定的位置中,类似于这样:这是一个静态数组,因为我们在第一步初始化的时候就已经固定了它的长度,后面再也无法改变。所以,由于有这个限制,静态数组不适用于那些不确定储存多少数据的场景。但是如果数组满了,能否再新建一个更长一些的数组,把原数组这些原创 2021-08-28 16:27:04 · 232 阅读 · 0 评论 -
我侄子都会的限流算法你都不会?好好看好好学吧!
计数器算法计数器算法是限流算法里最简单易实现的一种算法。比如我们规定,对于A接口来说,我们1分钟的访问次数不能超过100个。那么我们可以这么做:在一开始的时候,我们可以设置一个计数器counter,每当一个请求过来的时候,counter就加1,如果counter的值大于100并且该请求与第一个请求的间隔时间还在一分钟之内,那么说明请求数过多。如果该请求与第一个请求的间隔时间大于1分钟,且counter的值还在限流范围内,那么就重置counter,具体算法的示意图如下:这个算法虽然很简单,但是却存在一.原创 2021-07-26 19:27:18 · 130 阅读 · 0 评论