在使用容器的时候,我们可能需要求容器中最小的元素,即需要min()操作。我们可以通过遍历栈的存储结构来找到最小的元素,但那样将需要线性级别的执行时间。有没有一种方法能够使得该操作能在常数时间内完成呢?

先前在文章《两栈实现队列》中谈到了怎么用两个栈实现队列。那反过来是否也可行呢?即是否可以用(两个)队列来实现栈?

队列是一种 FIFO 表,而栈则是一种 LIFO 表。有没有可能使用栈来实现队列呢?

链表 (Link List) 是一种递归的数据结构,它或者为空 (null),或者是指向一个结点 (node) 的引用,该结点含有一个泛型的元素和一个指向另一条链表的引用。

你有了解过 C++、Java 和 C# 中的 map 和 set 的实现吗?据我所知,流行的实现都是默认采用红黑树作为底层数据结构,而不是散列表。那么问题来了,为什么?

    Page 1 of 3