A complete B+ tree data structure implementation in C++ built for a database systems course at Boston University. Supports insertion, search, and range queries.
- Generic B+ tree with configurable order
- Internal and leaf node separation
- Efficient search and range query operations
- File-based input for bulk operations
make
./treesearch├── src/
│ ├── main.cpp # Entry point, file I/O
│ ├── tree.cpp # B+ tree operations (insert, search)
│ ├── node.cpp # Base node class
│ ├── internalnode.cpp # Internal node (keys + child pointers)
│ └── leafnode.cpp # Leaf node (keys + values + sibling pointers)
├── inc/
│ └── main.h # Header definitions
├── Makefile
└── input_file.txt # Sample input
- C++11
- Object-oriented design with inheritance (Node → InternalNode / LeafNode)