C++ ,orient(面向) object , object = entity(实体)
Visible(可见的) or invisible(不可见) 变量用来保存数据
objects = attribute(属性) + services(服务)
C++ STL 容器
vector, list()
vector底层是数组,类似双向链表和list底层
map/set
unordered_map/unordered_set
哈希表和红黑树对数据的增删减查的时间复杂度决定了应用层代码可以执行的效率
数据结构
操作系统,进程线程调度,虚拟内存,内存管理,文件管理,常见命令
虚拟内存管理,每个进程虚拟地址空间
内核层,以红黑树表示虚拟地址内存空间,操作系统聊到底层也是数据结构,
系统编程,linuxC++,后台开发,写服务,高性能,高并发,高复用,
linux io复用epoll,epoll的底层是红黑树+排序链表, 红黑树和链表掌握的怎么样,
epoll()的接口是表层的,要聊到epoll的底层红黑树+排序链表
项目用到的中间件: 存储mysql , redis
myspl的索引 加速查询,是基于B+树实现 ,B+树是个多路的平衡树,B+树怎么构建怎么查询,
redis区别于memorycache,提供了非常大非常灵活的数据类型,包括有序集合,底层提供了跳跃表
,跳跃表是怎么构建元素,对元素进行查询的,为什么不选择红黑树呢,我们需要对整个数据结构算法进行全面了解,提高代码能力,9千行代码,长足长进
对实践性项目有帮助,对笔试面试,简答题有作用,工作中解决问题的思路更多,数据算法对软件代码细节很多,解决实际问题有帮助,好处说不完,
理论讲解+代码实践
vscode远程刷leetcode 线性表,哈希表,二叉树