加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
基础知识.txt 1.33 KB
一键复制 编辑 原始数据 按行查看 历史
hitty 提交于 2021-08-23 19:45 . add
1. 死锁的四个必要条件
互斥条件(公用但是不共享):进程对所分配到的资源不允许其他进程进行访问,若其他进程访问该资源,只能等待,直至占有该资源的进程使用完成后释放该资源
请求和保持条件(自己的不放还一直要别的):进程获得一定的资源之后,又对其他资源发出请求,但是该资源可能被其他进程占有,此事请求阻塞,但又对自己获得的资源保持不放
不可剥夺条件(别人无法让你放):是指进程已获得的资源,在未完成使用之前,不可被剥夺,只能在使用完后自己释放
环路等待条件(资源请求环路):是指进程发生死锁后,若干进程之间形成一种头尾相接的循环等待资源关系
2. AVL树、红黑树、B树、B+树、Trie
AVL树:平衡二叉查找树,左右树高不超过1,在修改节点时若发生不平衡则需要旋转(很慢)。适合查找多的场景
红黑树:相比AVL性能更加平衡
B、B+树:针对于磁盘I/O,为了防止全部将磁盘读入内存,需要构造树(节点对应磁盘页),树需要降低高度而扩大广度
每个节点存储更多的元素(多叉树)。B+树用叶子节点存储数据,叶子节点相连。
Trie树:字典树
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化