数据结构——栈
Adherer
sunshine
展开
-
HDU1237(栈的简单应用以及巧解的方法)
题目链接:简单计算器题目描述:简单计算器Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 16398 Accepted Submission(s): 5628Problem Descrip原创 2016-03-01 22:54:37 · 2520 阅读 · 0 评论 -
单调栈的介绍以及一些基本性质
单调栈的定义:单调栈就是栈内元素单调递增或者单调递减的栈,单调栈只能在栈顶操作。为了更好的理解单调栈,则可将单调栈用生活情形模拟实现,例如:我们借用拿号排队的场景来说明下。现在有很多人在排队买可乐,每个人手里都拿着号,越靠前的人手里的号越小,但是号不一定是连续的。小明拿了号后并没有去排队,而是跑去约会了。等他回来后,发现队伍已经排得很长了,他不能直接插入到队伍里原创 2016-02-26 22:56:51 · 38913 阅读 · 16 评论 -
单调栈解木板倒水问题(单调栈的简单应用)
题目描述:地上从左到右竖立着 n 块木板,从 1 到 n 依次编号,如下图所示。我们知道每块木板的高度,在第 n 块木板右侧竖立着一块高度无限大的木板,现对每块木板依次做如下的操作:对于第 i 块木板,我们从其右侧开始倒水,直到水的高度等于第 i 块木板的高度,倒入的水会淹没 ai 块木板(如果木板左右两侧水的高度大于等于木板高度即视为木板被淹没),求 n 次操作后,所有 ai 的和是多少原创 2016-02-26 23:45:42 · 3218 阅读 · 2 评论 -
栈的简单应用(模拟出栈进栈)
题目描述:输入格式:输入有两行,第一行是一个正整数 N (1 输出格式:输出一行。如果能通过魔法机得到序列 a,则输出“YES”,否则输出“NO”。输入:52 1 5 4 3输出:YES这道题是栈的入门题,直接用栈模拟即可。我们首先对样例进行分析:数字 1 进栈,将栈顶元素与输出序列首元素比较,发现两者不等,因此继续处理,将后继元素压入栈中。原创 2016-02-27 12:19:49 · 2446 阅读 · 1 评论 -
C++栈的初始化,入栈,出栈,获取栈顶元素等操作
栈的一些性质:1.栈为空不可以出栈2.栈顶元素先出3.新元素插入栈顶栈的初始化:#include#includeusing namespace std;template //模板,表示可以"动态"定义Stack中某些数据元素的类型,这样的话可以增加代码的重用性 class Stack{ private: Type原创 2016-02-26 22:21:32 · 23057 阅读 · 1 评论