一、面试被怼
面试官:你知道文件索引、数据库索引一般用什么数据结构来存储吗?
小秋:知道啊,一般都是用树形结构来存储的。
面试官:可以说说为啥用树形结构来存储吗?
小秋:树形结构例如想 B 树,B+ 树,二叉查找树都是有序的,所以查询效率很高,可以再 O(logn) 的时间复杂度查找到目标数据。
面试官:那可以问问文件索引,例如数据库索引一般用哪种树形结构吗?
小秋:大部分用 B+ 树,少部分用 B 树。(B和B+树太他么复杂了,幸好背了下面试题,嘻嘻)
面试官:想问下为什么要用 B 树而不用二叉查找树啊?或者为啥不用哈希表啊?哈希表的查找速度也很快呀。
小秋:哈希表虽然能够再 O(1) 查找到目标数据,不过如果我们要进行模糊查找的话,却只能遍历所有数据,并且如果出现了极端情况,哈希表冲突的元素太多,也会导致线性时间的查找效率的。
面试官:那为啥不用二叉查找树呢?
小秋:这个…..其实我也不知道,当时是在某个面试题中看到的答案的,嘻嘻。
<