栈和队列常见题型:
实现栈和实现队列。
两个栈实现一个队列。
设计栈,使得pop,push和min时间复杂度为O(1)。
滑动窗口的最大值。
栈的进出序列。...
分类:
编程语言 时间:
2015-07-26 22:45:25
阅读次数:
233
1.设计包含min函数的栈[数据结构]题目:定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。要求函数min、push以及pop的时间复杂度都是O(1)。2.子数组的最大和[算法]题目:输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个...
分类:
编程语言 时间:
2015-07-26 22:22:45
阅读次数:
212
纸牌游戏解题报告在写题目之前,还是要讲一下队列。队列:“先进先出”,又称公平队列。注意:队列不需要定义大小。头文件:定义/声明方式:queue s;push():入队、pop():出队front():取队首元素,但不删除,返回queue内的第一个元素back():返回queue内的最后一个元素题目:...
分类:
其他好文 时间:
2015-07-26 15:33:52
阅读次数:
130
error:Your local changes to the following files would be overwritten by merge: 如果希望保留生产服务器上所做的改动,仅仅并入新配置项: git stash git pull git stash pop 然后可以使用git ...
分类:
其他好文 时间:
2015-07-26 12:26:16
阅读次数:
365
题目描述:http://ac.jobdu.com/problem.php?pid=1512
用两个栈来实现一个队列,完成队列的Push和Pop操作。
队列中的元素为int类型。解析:
定义2个栈s1, s2
1. 开始时,将元素push进s1
2. front()或pop()时,将s1的数据,出栈,顺序压入s2; 此时发现 s2 的出栈顺序即队列的出队列顺序。
3. 再次push时,仍然...
分类:
其他好文 时间:
2015-07-25 23:04:59
阅读次数:
144
字典(dict)删除元素, 可以选择两种方式, dict.pop(key)和del dict[key].代码# -*- coding: utf-8 -*-
def remove_key(d, key):
r = dict(d)
del r[key]
return r
x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}
x.pop(1)
print xx =...
分类:
编程语言 时间:
2015-07-25 23:04:27
阅读次数:
163
3.2 How would you design a stack which, in addition to push and pop, also has a function min which returns the minimum element? Push, pop and min shou...
分类:
其他好文 时间:
2015-07-25 13:46:14
阅读次数:
120
vector(不定长数组)
在C语言中,数组定义必须给定长度,但是有的时候太浪费空间,可以利用STL中vector函数来解决这个问题。
1 基本操作
(1)头文件#include
(2)创建vector对象,vector vec;
(3)尾部插入数字:vec.push_back(a);
尾部删除数字:vec.pop_ba...
分类:
其他好文 时间:
2015-07-25 12:18:39
阅读次数:
125
平衡的括号这道题目主要运用栈的一些知识。栈在第五章的STL里已经讲了一些,这里再复习一下。栈的特点是“先进后出”。头文件是,声明方式:"stack s"。主要有以下几个操作:push():把元素压入“栈顶”,又称入栈pop():从栈顶把元素弹出,出栈top():取栈顶元素(但不删除)size():测...
分类:
其他好文 时间:
2015-07-24 22:06:41
阅读次数:
137
queue(STL中函数,就是指队列)
#include
#include
using namespace std; //这几个头文件必不可少
int main()
{
queue q; //使用前需定义一个queue变量,且定义时已经初始化
while(!q.empty()) q.pop(); //重复使用时,用这个初始化(空则返回1,不空...
分类:
其他好文 时间:
2015-07-24 20:59:56
阅读次数:
119