内核数据结构的选择策略
遍历数据,存储较少的数据项,大小不明的数据集合
链表
简单,长度可修改
符合生产者/消费者模式,定长缓冲
队列
添加和删除工作简单有效
映射描述符UID
映射
存储大量数据且检索迅速
红黑树
搜索时间复杂度为对数关系,遍历时间复杂度为线性关系,比较复杂但内存开销不大。使用次数如果比较少则不适合
其他数据结构:
算法复杂度
符号表示
一般描述复杂度使用O(g(x))来表示,其含义为:
完成f(x)的时间总是小于等于完成g(x)的时间和任意常量的乘积。
但是O(g(x))只是代表上限,但是对于一个数值来说,其最大上限为无穷可能就没有意义,所以定义了θ来表示最小上限。
如果f(x)是g(x)的大θ,那么g(x)既是f(x)的上限也是下限,所以可以说f(x)是g(x)级