littlebot
Published on 2025-04-03 / 0 Visits
0

【源码】基于 C++ 的全内存 B+ 树实现项目

项目简介

本项目使用 C++ 语言实现了全内存的 B+ 树数据结构,实现了 B+ 树的插入、删除、查找操作,同时还具备 B+ 树到文件的序列化和反序列化功能。

项目的主要特性和功能

  1. 实现 B+ 树核心操作:支持插入、删除和查找功能,可处理大规模数据。
  2. 数据持久化:具备序列化和反序列化能力,可将 B+ 树的数据存储到文件以及从文件中恢复。
  3. 性能测试:提供性能测试脚本,插入 1 千万结点时间接近 7.9s,可评估操作效率。
  4. 测试全面:包含单元测试、并发测试,确保 B+ 树的正确性和多线程环境下的稳定性。
  5. 对比测试:支持与 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】