数据结构和算法
Asaue
这个作者很懒,什么都没留下…
展开
-
操作系统调度算法
操作系统调度算法决策模式:函数在执行的瞬间使用的处理方式。1.抢占模式:可以互相抢状态的模式,当前正在运行的进程可以被打断,并转移的就绪态。2.非抢占模式:一旦开始执行就不会停止直到结束。FCFS(first come first server) 先来先服务是最简单的策略,和FIFO(first input first output)队列先进先出一个意思,这种是非抢占模式。说白了就是排队买饭,你在别人后面进队别人买的再慢你也得等他买完。SJF(short job first) 假设这个场原创 2020-08-07 16:32:18 · 307 阅读 · 1 评论 -
python实现LRU算法
LRU算法python实现 学习mysql数据库时,了解了一下ib_buffer_pool的存储机制,使用LRU算法施行将少用的数据淘汰,保存使用更频繁的数据。 再基于3.6版本python的字典数据类型改变,想试试新字典默认有序的话能否直接使用于LRU算法。from collections import OrderedDictclass Lrulru_dict(): def __init__(self, capacity): # 传入缓存容量 sel原创 2020-07-23 08:37:16 · 626 阅读 · 1 评论 -
python字典
python3.6字典类型的改变python3.6之前的版本,字典是无序的,要使用有序字典则需要调用orderdict对象。3.6之后字典就默认为有序字典。原因如下:1.python3.6之前的版本:# 在python中新建一个字典new_dict = {}这里Cpython定义的是:新建了一个8X3的空二维数组的内存空间存储hash函数返回值,key的内存地址,value的内存地址。例如:new_dict = {}# 这里就新建了一个8X3的空二维数组# 实行添加操作new_原创 2020-07-22 20:00:48 · 181 阅读 · 1 评论 -
时间复杂度和空间复杂度
时间复杂度和空间复杂度1.时间复杂度一个算法与执行代码行数的相关性,且随着某个变量的增长而增长。例如:n = int(input())a = n这里的代码永远都只是两行代码的时间单位,不会随变量n的增长而增长。所以时间复杂度为O(1)n = int(input())a = 1while a < n : a += 1这里的代码的执行行数为2n + 1次,与n的值线性相关,时间复杂度为O(n)n = int(input())a = 1while a < n原创 2020-07-22 19:59:19 · 183 阅读 · 2 评论