算法
文章平均质量分 67
乐橙Web
不断上进,积极进取;努力赚钱,做好家中顶梁柱!
展开
-
LRU算法
题目详情LRU 是 Least Recently Used 的缩写,即最近最少使用,是一种常用的页面置换算法,选择内存中最近最久未使用的页面予以淘汰。思路解法:维护一个数组,提供 get 和 put 方法,并且限定 max 数量。使用时,get 可以标记某个元素是最新使用的,提升它去第一项。put 可以加入某个key-value,但需要判断是否已经到最大限制 max若未到能直接往数组第一项里插入若到了最大限制 max,则需要淘汰数据尾端一个元素。LRUCache cache = new L原创 2021-08-08 16:09:44 · 383 阅读 · 0 评论 -
时间空间复杂度
算法(Algorithm)是指用来操作数据、解决程序问题的一组方法。对于同一个问题,使用不同的算法,也许最终得到的结果是一样的,但在过程中消耗的资源和时间却会有很大的区别。那么我们应该如何去衡量不同算法之间的优劣呢?主要还是从算法所占用的「时间」和「空间」两个维度去考量。时间维度:是指执行当前算法所消耗的时间,我们通常用「时间复杂度」来描述。空间维度:是指执行当前算法需要占用多少内存空间,我们通常用「空间复杂度」来描述。因此,评价一个算法的效率主要是看它的时间复杂度和空间复杂度情况。然而,有的时候原创 2021-08-08 11:17:18 · 290 阅读 · 0 评论 -
算法排序
排序冒泡排序原理:以下面的这个为栗子。 外层循环控制循环的次数,因为内层循环要控制排列的顺序,有arr[k+1],所以arr.length-1,外层循环每循环一次,都会将最大数字房子最后面。比如2,6,8,4,5在经历一次外层的for循环候,为2,6,4,5,8; 内层循环控制排列顺序,因为外层循环每循环一次就会将最大的数字排在后面,所以内层循环在外层循环每循环...原创 2018-07-20 18:36:58 · 220 阅读 · 0 评论