Files
James Roy 44ff3d3805 samples: Add red-black tree sample program
Introduce an example program to demonstrate
how to use the red-black tree API.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-10-13 08:44:07 +02:00
..

.. zephyr:code-sample:: red-black-tree
   :name: Red-Black Tree Data Structure

   Use a red-black tree data structure in a Zephyr application.

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:

.. code-block:: console

   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:

.. code-block:: console

        *** 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.