а для дурака пояснение?
Есть массив, и с ним указатель начала очереди и конца.
Если указатель на начало меньше, чем указатель для конца - в очереди все элементы между ними
Если больше - в очереди все элементы от начала до правой границы массива, а потом от левой границы до начала.
Каждый раз когда вытаскиваешь или добавляешь элемент соотв. указатель увеличивается на 1, и если достиг границы массива - сбрасывается на 0
Если конец очереди "догнал" начало, т.е. capacity достигнута - выделяется новый массив, больше прежнего в n раз, и элементы переносятся туда как в Vec