项目简介
本项目使用 C++ 语言实现了全内存的 B+ 树数据结构,实现了 B+ 树的插入、删除、查找操作,同时还具备 B+ 树到文件的序列化和反序列化功能。
项目的主要特性和功能
- 实现 B+ 树核心操作:支持插入、删除和查找功能,可处理大规模数据。
- 数据持久化:具备序列化和反序列化能力,可将 B+ 树的数据存储到文件以及从文件中恢复。
- 性能测试:提供性能测试脚本,插入 1 千万结点时间接近 7.9s,可评估操作效率。
- 测试全面:包含单元测试、并发测试,确保 B+ 树的正确性和多线程环境下的稳定性。
- 对比测试:支持与 std::map(内部红黑树实现)进行插入性能对比。
安装使用步骤
假设用户已经下载了本项目的源码文件。
方式一:使用脚本
在项目目录下执行以下命令:
shell
chmod +x setup.sh
chmod +x test.sh
./setup.sh
方式二:手动 cmake 构建
shell
cmake -S. -B./build
cmake --build./build
测试
测试可执行文件位于 ./build/bin
文件夹下,各文件功能如下:
- COMPARETEST
:比较 B+ 树和 std::map 插入 1 千万结点的时间。
- COMCURRENTTEST
:并发 B+ 树的测试。
- PERFROMTEST
:1 千万结点的性能测试。
- SERIALIZETEST
:B+ 树序列化测试。
- UNITTEST
:单元测试,测试 B+ 树正确性。
可执行 test.sh
脚本进行单元测试、性能测试和并发测试:
shell
chmod +x./test.sh
./test.sh
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】