采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
请问下老师有没有B-Tree B+Tree B*Tree方面的资料推荐,想研究下索引结构的原理,谢谢。
在通用教材方面,《算法导论》B树一章专门讲解了B树的基本原理,应该是最容易access到的材料:)
wiki从来都是一个好地方,可以对某一个topic有整体性的认识,同时在综述中不失有各种引向更加细节讨论的链接。wiki上的B树传送门:
B树:https://en.wikipedia.org/wiki/B-tree
B+:https://en.wikipedia.org/wiki/B%2B_tree
如果对具体实现感兴趣,GeeksforGeeks的B-Tree专题介绍给出了C++实现:
PART 1:https://www.geeksforgeeks.org/b-tree-set-1-introduction-2/
PART 2:https://www.geeksforgeeks.org/b-tree-set-1-insert-2/
PART 3:https://www.geeksforgeeks.org/b-tree-set-3delete/
从道理上互联网上应该还有很多其他语言实现的代码内容,有兴趣可以根据自己熟悉的语言再搜索一下。
在具体结合数据库方面,有一个小有名气的代码仓,实现了一个小型数据库的内核,其中的主要数据结构当然使用B树啦。代码仓:https://github.com/cstack/db_tutorial
同时,他写了一本小书,描述整个实现过程。所有的内容可以免费在网上浏览,不过比较简略。传送门:https://cstack.github.io/db_tutorial/
《数据库系统概念》这本书(Database System Concepts)在第十一章专门介绍了B树在大型数据库系统中的使用原理。不过由于我不是专业搞数据库的,没有看过这种这么专门介绍数据库系统的书籍。这本书的最新版目录可以在网上找到。传送门:http://codex.cs.yale.edu/avi/db-book/db6/toc-dir/toc.pdf 如果有必要也可以参考:)
加油!
非常感谢bobo老师,非常详细的回答,我好好学习下,谢谢。
登录后可查看更多问答,登录/注册
动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…
10.3k 16
1.4k 17
1.3k 14
1.2k 14