![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 71
lolxxs
这个作者很懒,什么都没留下…
展开
-
Java实现Treap树
文章目录Treap树数据结构遍历查询增加删除完整代码Treap树Treap树是平衡二叉搜索树的一种实现方式,但它不是完全平衡的。平衡二叉搜索树的实现方式还有AVL树、红黑树、替罪羊树、伸展树数据结构Treap树的节点除了有二叉搜索树的class TreeNode { int value; int priority; TreeNode left; TreeNode right; public TreeNode(int value, int priority)原创 2022-03-08 16:22:31 · 558 阅读 · 0 评论 -
操作系统进程调度算法
文章目录进程调度算法算法衡量维度先来先服务FCFS(First-Come First-Served)FCFS实现进程调度算法算法衡量维度到达时间:任务到达时刻(时间点)服务时间:任务总共执行时间(时间段)开始时间:任务开始执行时刻(时间点)完成时间:任务完成时刻(时间点)周转时间:任务从到达到完成之间时间(时间段)带权周转时间:周转时间/服务时间先来先服务FCFS(First-Come First-Served)概念:先来先服务是非抢占式的,进程按照请求CPU的时间顺序排队使用CPU原创 2021-12-27 16:24:45 · 873 阅读 · 0 评论 -
操作系统的11种页面置换算法
总结操作系统页面置换算法有如下算法最佳置换算法OPT(Optimal):操作系统缓冲管理器只有一个策略,就是将未来不使用或最少使用的块置换处内存就行,能达到这种要求的算法是最佳置换算法OPT(Optimal),这种算法无法实现,因为无法预测未来先进先出算法FIFO(First Input First Output)最近最久未使用LRU(Least Recently Used)置换算法:考虑时间Clock算法:是LRU的近似实现,使用一个循环队列,一个指针一直往下循环,指到一个附加位为0的则将其置原创 2021-12-27 15:21:32 · 1597 阅读 · 0 评论 -
Java int和long转字节数组 极简实现
文章目录int转字节数组字节数组转intlong转字节数组字节数组转long参考int转字节数组public static byte[] intTobyteArray(int num) { byte[] b = new byte[4]; b[3] = (byte)(num & 0xff); b[2] = (byte)((num >> 8) & 0xff); b[1] = (byte)((num >> 16) & 0x原创 2021-11-26 14:42:52 · 396 阅读 · 0 评论 -
Java 迭代实现归并排序
文章目录归并排序思想:归并排序实现步骤1.数组拆分2.数组第一次合并3.数组循环合并迭代实现归并排序完整代码归并排序思想:大家都说将大问题化为小问题,这个是比较抽象的,其实如果小问题也不好解决,那我们化为小问题又有什么用呢举个例子 [5, 2, 1, 4, 3] ,我们可以把它分为小数组,但小数组有多小呢,这就是看小问题好不好解决,如分为 [5, 2, 1] 和 [4,3] ,那第一个数组排序也至少需要比较两次,那么这个小问题相对来说不是很好解决,如果看第二个数组,只需要比较一次就行了,可以发现如果原创 2021-11-26 13:06:57 · 855 阅读 · 0 评论 -
Java 实现快速乘 快速幂算法 从比较容易理解的快速乘过渡到快速幂
文章目录快速乘快速幂本质原理算法实现快速乘快速幂快速幂(改进)快速乘快速幂本质原理在计算机中 1和1相加 以及 123456789和123456789相加,两个计算速度差不多,因为不管是1还是123456789,在int中都是占4个字节,它们的所占的位数都一样,所以影响计算机计算速度的就是加法的次数还是 1和1 以及 123456789和123456789,不过此时是相乘,由于计算机的乘法实际上转化为加法计算,所以第二个相加次数会很大,所以这时候就需要用到快速乘算法如果 101 * 33,计算机可原创 2021-10-28 13:38:56 · 960 阅读 · 0 评论 -
Java 实现调度算法 包括 FCFS(FIFO)、优先权排队、循环排队、加权公平排队(WFQ)
文章目录为什么要用调度算法?调度算法先来先服务(FCFS First-Come First-Server)优先权排队(Priority Queuing)循环排队(Round Queuing)加权公平排队(Weighted Fair Queuing)加权轮询加权随机为什么要用调度算法?首先要声明这里实现的是应用层调度算法,针对的请求,而不是操作系统的进程调度算法,在平常处理请求时,如果请求并发量不大,是一个接一个过来的,那我们没有选择只有一个接一个处理请求了,但是如果请求并发量很多,那我们就有选择先执行哪原创 2021-10-24 14:41:41 · 2001 阅读 · 0 评论 -
Java 实现令牌桶限流算法 原生极简实现 包括单机和多线程版本
文章目录漏桶(令牌桶)算法简介令牌桶算法限流范围:单机版实现多线程版实现漏桶(令牌桶)算法简介令牌桶是指一个限流容器,容器有最大容量,每秒或每100ms产生一个令牌(具体取决于机器每秒处理的请求数),当容量中令牌数量达到最大容量时,令牌数量也不会改变了,只有当有请求过来时,使得令牌数量减少(只有获取到令牌的请求才会执行业务逻辑),才会不断生成令牌,所以令牌桶算法是一种弹性的限流算法令牌桶算法限流范围:假设令牌桶最大容量为n,每秒产生r个令牌平均速率:则随着时间推延,处理请求的平均速率越来越取决于原创 2021-10-24 12:22:27 · 9657 阅读 · 3 评论 -
Java 缓存淘汰算法LRU的三种实现方式
缓存淘汰算法LRU的三种实现方式,原生极简实现原创 2021-10-17 11:16:40 · 153 阅读 · 0 评论 -
Java 9种排序具体实现和解析
文章目录1.选择排序2.冒泡排序3.插入排序4.希尔排序5.快速排序6.归并排序7.基数排序8.计数排序1.选择排序public class SelectSortDemo { public static void main(String[] args) { int[] nums = new int[]{5,2,1,4,3}; selectSort(nums); System.out.println(Arrays.toString(nums));原创 2021-10-08 11:17:31 · 100 阅读 · 0 评论