Ringpuffer

Definition - Was bedeutet Ringpuffer?

Ein Ringpuffer ist eine Datenstruktur, die als zirkulär behandelt wird, obwohl ihre Implementierung linear ist. Ein zirkulärer Puffer wird normalerweise als Datenwarteschlange verwendet. Ein Ringpuffer ist eine beliebte Methode zum Implementieren eines Datenstroms, da der Code kompakt sein kann.

Ein Ringpuffer wird auch als Kreispuffer, Kreiswarteschlange oder zyklischer Puffer bezeichnet.

Technische.me erklärt Ring Buffer

Ein Ringpuffer ist eine übliche Implementierung einer Warteschlange. Es ist beliebt, weil kreisförmige Warteschlangen einfach zu implementieren sind. Während ein Ringpuffer als Kreis dargestellt wird, ist im zugrunde liegenden Code ein Ringpuffer linear. Ein Ringpuffer existiert als Array fester Länge mit zwei Zeigern: einem, der den Kopf einer Warteschlange darstellt, und einem anderen, der den Schwanz darstellt. In einer Warteschlange werden Elemente am Ende der Warteschlange auf "FIFO" -Methode (First In-First Out) hinzugefügt. Die ersten Elemente der Warteschlange werden in der Reihenfolge, in der sie hinzugefügt wurden, aus dem Kopf entfernt. Wenn der Kopfzeiger das Ende des Arrays erreicht, wird er zum ersten Element im Array umgebrochen. Alle Daten im Puffer werden überschrieben. Der Kopf der Warteschlange unterscheidet sich vom ersten Element im tatsächlichen Array, und beide Zeiger bewegen sich, wenn Elemente hinzugefügt und entfernt werden.

Ein Nachteil eines Ringpuffers ist seine feste Größe. Für Warteschlangen, in denen Elemente nicht nur am Anfang und Ende eines Puffers in der Mitte hinzugefügt und entfernt werden müssen, ist eine Implementierung als verknüpfte Liste der bevorzugte Ansatz.