其实在数据库中,作为索引文件的数据结构是不可能用二叉搜索树这样简单的数据结构,因为二叉树在大量索引的情况下,它是一颗很高很瘦的树,因为每个节点都只有两个子树,那么查找到叶子节点的查找次数就会变多。因此IO 操作变多。
以B树为例,B+树是常用的数据库索引结构所用的数据结构。因为B树是一个多叉树,所以它又矮又胖,查到叶子节点的IO消耗就越少。
B树是一种多叉树,每个节点上都存有k个关键码key,和A个指针这个A个指针中存有指向子树的根节点,
当索引的字段是无论是汉字还是数字还是字母,索引都会把它变成一个编码key,再插入到树当中,不会傻傻的插入汉字和字母。所以汉字和字母已经没有区别了。
卧槽,果然大佬,感谢
中文也可排序
兄弟你好像走入了误区,例如: "中文",它不是直接存放到磁盘上的。就来gbk字符集来说,“中”和“文”的字符编码分别为(16进制):D6D0 和 CEC4 。这不就很好排序和查询吗?
感谢大佬