Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想知道以下方法对于反转队列是否正确: - 将队列的所有元素出列并将它们存储在从索引 0 到 a.length-1 的数组 a 中 - 将每个元素数组排入队列但从索引 a 开始.length-1 到 0
有更好的解决方案吗?我们 cud 使用堆栈,但它与使用像我上面的解决方案这样的数组基本相同。
如果您事先知道队列大小,您的方法将有效,并且比使用堆栈更有效,因为数组访问比更新堆栈状态稍快。
如果您出于任何原因不知道队列大小,则堆栈可以正常工作。
确保您的队列在冲销操作期间没有改变。如果在使元素出队时可以将项目添加到队列中,则最初为数组测量的大小可能不再有效。根据您编写代码的方式,这可能会在您索引超出数组末尾时导致异常,或者导致您将一些项目留在原始队列中并且不反转它们。