Red-Black Tree Data Structure

Browse source code on GitHub

Overview

This sample demonstrates how to use the Red-Black Tree (rbtree) data structure in a Zephyr application. The example shows basic rbtree operations such as insert, remove and foreach.

Building and Running

To build and run this sample on a supported board:

west build -b <your_board> samples/data_structures/rbtree
west flash

Replace <your_board> with your actual board name (e.g., native_sim).

Sample Output

On startup, the sample application will perform a sequence of rbtree operations and print the results. Expected output resembles:

*** Booting Zephyr OS build gd2a5c1ca82f0 ***
insert n=1 rb=0x105004
insert n=3 rb=0x105010
insert n=2 rb=0x10501c
insert n=5 rb=0x105028
insert n=4 rb=0x105034
max=1 min=5
rbtree elements:
n=5
n=4
n=3
n=2
n=1
removed max=1
removed min=5
rbtree after removal:
n=4
n=3
n=2
Done

Requirements

No external hardware is required to run this sample. It runs on any Zephyr-supported board with standard console output, or native_sim.