Innholdsfortegnelse:
Definisjon - Hva betyr ringbuffer?
En ringbuffer er en datastruktur som behandles som sirkulær, selv om implementeringen er lineær. En sirkulær buffer brukes vanligvis som en datakø. En sirkulær buffer er en populær måte å implementere en datastrøm fordi koden kan være kompakt.
En ringbuffer er også kjent som en sirkulær buffer, sirkulær kø eller syklisk buffer.
Techopedia forklarer Ring Buffer
En ringbuffer er en vanlig implementering av en kø. Det er populært fordi sirkulære køer er enkle å implementere. Mens en ringbuffer er representert som en sirkel, i den underliggende koden, er en ringbuffer lineær. En ringbuffer eksisterer som en fast lengde-gruppe med to pekere: en som representerer hodet til en kø, og en annen som representerer halen. I en kø blir elementer lagt til halen i køen på en "FIFO" (først inn-først ut) måte. De første elementene i køen blir fjernet fra hodet i den rekkefølgen de ble lagt til. Når hodepekeren kommer til slutten av matrisen, vikles den rundt til det første elementet i matrisen. Eventuelle data i bufferen overskrives. Køens hode er forskjellig fra det første elementet i den faktiske matrisen, og begge pekerne beveger seg når elementer legges til og fjernes.
En ulempe med en ringbuffer er dens faste størrelse. For køer der elementer må legges til og fjernes i midten, ikke bare i begynnelsen og slutten av en buffer, er en implementering som en lenket liste den foretrukne tilnærmingen.