大咖20行Python代码玩转算法!涉及到算法就觉得很难?颠覆认知!
程序员文章站
2023-04-03 10:13:32
算法指解决问题准确而完整的方案描述,是解决问题的清晰指令,用系统的方法去描述解决问题的策略机制。 LRU是算法的一种,那么如何用Python实现以LRU为基础的算法? 此博文讲的就是利用Python实现基于LRU算法的缓存。 缓存 由上图可知,当你在浏览器的输入框输入你想要搜查的资料时,浏览器会给服 ......
算法指解决问题准确而完整的方案描述,是解决问题的清晰指令,用系统的方法去描述解决问题的策略机制。
LRU是算法的一种,那么如何用Python实现以LRU为基础的算法?
此博文讲的就是利用Python实现基于LRU算法的缓存。
缓存
由上图可知,当你在浏览器的输入框输入你想要搜查的资料时,浏览器会给服务器发送一个请求,然后服务器经过一系列的运算后,再把数据返回给浏览器。
但是如果有很多的浏览器同时去访问,那么就会有许多重复的操作。这样会造成资源的浪费,时间的浪费,造成卡顿,这显然不是我们想要的。
LRU算法
常用于页面置换算法,是为虚拟页式存储管理服务的。
淘汰逻辑:
缓存是一个列表结构,每一个空格都代表一个缓存容量,显然是8。最顶和最尾都是一个节点,分别为头与尾。
当某个数据访问的次数增加时,就会不断地被移动到列表头部,访问量很少的数据,则会被挤出缓存。
20行Python代码实现LRU算法
Python算法难吗?难,但是不至于触手不及。我们可以从容易的出发,那么路也会越来越宽。
下一篇: discuz目录文件资料汇总