1、数组、链表、栈、堆比较
数组主要用于查询操作比较多的情况,可以直接通过下标进行定位
链表主要用于删除、修改、添加操作比较多的情况
栈的特点是先进后出
堆分为小根堆、大根堆,可以用来构建优先队列
2、什么是哈希表
哈希表是基于哈希函数建立的一种查找表,存储的主要是K-V键值对,哈希函数为 映射位置 = F(key),自变量为key,因变量为entry数组下标。
如何处理哈希冲突?
① 开放定址法
其中di有三种取法:线性探测再散列、平方探测再散列、随机探测再散列
② 链地址法;
将该位置冲突的数据用链表连接
③ 再散列法;
④ 公共溢出区法
将冲突的数据都放在一个池子里
3、MySQL 聚簇索引与非聚簇索引、覆盖索引、联合索引
聚簇索引与非聚簇索引
聚簇索引:将数据存储与索引放到了一起,索引结构的叶子节点保存了行数据;正文内容本身就是按照一定规则排列的目录
一个表的聚簇索引只有一条
例如:目标藏书在C区2柜3排5仓,去C