题目:设计包含min函数的栈。
定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。
要求函数min、push以及pop的时间复杂度都是O(1)。
文件分布:
头文件和main文件
头文件:代码
#include
#include
using namespace std;
template
class stackWithMin{
private :
...
分类:
其他好文 时间:
2014-08-05 22:36:41
阅读次数:
304
题目:定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数。分析:当一个栈解决不了问题的时候我们就可以考虑采用辅助栈。 每次第二个栈一直是保存所定义栈中最小的元素,每次入栈的时候,辅助栈都进行比较保存最小的元素。先在头文件定义:typedef char ElemType;class...
分类:
其他好文 时间:
2014-06-19 00:55:50
阅读次数:
174
题意:
定义栈的数据结构,要求添加一个min 函数,能够得到栈的最小元素。
要求函数min、push 以及pop 的时间复杂度都是O(1)。
思路:定义两个栈,一个用来记录数据的插入和删除,一个用来存储最小值的变化
代码如下:
template
class Stack
{
public:
Stack(int len=100);
T Min();
...
分类:
其他好文 时间:
2014-05-22 23:46:32
阅读次数:
359
剑指offer上的第21题,之前在Cracking the Coding interview上做过,思路参考这里,这次写了测试函数,在九度OJ上测试通过。
题目描述:
定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。
输入:
输入可能包含多个测试样例,输入以EOF结束。
对于每个测试案例,输入的第一行为一个整数n(1<=n<=1000000), n代表将要输入的操作的步骤数。
接下来有n行,每行开始有一个字母Ci。
Ci=’s’时,接下有一个数字k,代表将k压入栈。
Ci=’o’时,...
分类:
其他好文 时间:
2014-05-22 07:15:30
阅读次数:
318
定义栈的数据结构,在该类型中实现一个能够得到栈的最小元素的min函数。在该栈中,调用min ,
push , pop 的时间复杂度都是O(1)。
分类:
其他好文 时间:
2014-05-01 12:33:27
阅读次数:
320