Een circular buffer is een array met vaste grootte die wordt behandeld alsof de uiteinden in een ring zijn verbonden. Twee indices — head (lezen) en tail (schrijven) — vorderen en verpakken zich met behulp van modulo-rekenkunde, wat een O(1) FIFO-wachtrij oplevert zonder toewijzing na creatie.
Waarom het belangrijk is
text
capacity 5, after writing A,B,C,D and reading A,B:
index: 0 1 2 3 4
[ . ][ . ][ C ][ D ][ . ]
head^ tail^ (tail wraps to 0 next write)
