Look into Lossy Queues.
When you obtain the queue, you can set a maximum size.
When you add a new element to the queue, use Lossy Enqueue Element. If the Queue is full (as defined by the size you set), then it will bump out the oldest.
If you want to remove an item from the queue, use your regular Dequeue Element.
If you want to see the next item in the queue without removing it, use Preview Queue Element
If you want to see all the elements in the queue without removing any, the use Get Queue Status and set the input to Return Elements? to true.
Flush Queue lets you wipe it clean.
Advantages of queues, especially for large data structures is that only references to each element are stored in order. The elements themselves do not have to be stored in contiguous memory like they are in an array.