根据javadoc,
当用作堆栈时,ArrayDeque 类可能比 Stack 更快
我不明白 ArrayDeque 怎么能比堆栈快。假设栈使用链表实现如下:
Push: Insert new element at the head, teamp->next = head; head = temp
(where temp is the element to be inserted)
Pop: Remove the element from head, and make head = head->next
对于大量元素,ArrayDeque 会产生调整大小的开销,这在使用 LinkedList 实现的 Stack 中不会出现这种情况。那么 ArrayDeque 到底比栈快多少呢?