rust实现循环队列struct CircularQueue<T> { data: Vec<Option<T>>, head: usize, tail: usize, capacity: usize, } impl<T> CircularQueue<T> { fn new(capacity: usize) -> Self { let mut data = Vec::with_capacity(capacity); for _ in 0..capacity { data.push(None); } CircularQueue