有没有办法在调用入队函数后返回队列,以使返回的队列包含新元素而原始队列保持不变?
例如
ArrayList<T> result = new ArrayList<T>(list);
result.add(0, t);
return result;
这将返回一个新队列,但这种方法太慢了。还有其他方法吗?也许通过与原始队列共享结构?
主要问题是如何返回一个新队列(在将元素附加到队列之后)但不复制原始队列的其余部分。(有没有办法参考它?)
例如 original_queue=[1 2 3 4 5]
调用 enqueue(6) 应该返回 [1 2 3 4 5 6]
但 original_queue=[1 2 3 4 5]