这就是个水题,本质上就是判断括号顺序,只要考虑下列几种错误的情况:1.)( 或】【
2.(【) 或【(】
3.((() 或 【】】】】或()))或【【【【【】简单来说,保持个数平衡,括号对称,没有夹杂的就好了#include
#include
#include
int main()
{
int n;
scanf("%d",&n...
分类:
其他好文 时间:
2015-07-24 22:46:45
阅读次数:
133
四种基本结构:集合、线性结构、树形结构、图/网状结构.常用数据结构:数组、栈、队列、链表、图、堆、散列表.
分类:
其他好文 时间:
2015-07-21 15:04:46
阅读次数:
101
除了数组、链表,线性的数据结构中还有很重要的几种结构:队列、栈。 队列,一种先进先出的数据结构(FIFO),其实队列可以看成是一个两个口的管道,从一个口进,另一个口出,先进去的必定得在另一个口先出去,否则后面的都出不去;栈,一种后进先出的数据结构(LIFO),栈更像是只有一个口的管道,只有一个...
分类:
编程语言 时间:
2015-07-18 10:48:00
阅读次数:
180
所谓栈和队列其本质都是一种存储信息的方法,最主要的差别就是两者的存取方式不同,栈相当于是一个一端开口一端封闭的空心玻璃柱,每存入一个数据就是扔进一个与管口等粗的球,取出数据时只能取最上头的,也就是最后一个放进去的,并且当管中无球时,无法取数据;相对而言,队列相当于是一个两端开口的空心玻璃柱,每存入....
分类:
其他好文 时间:
2015-07-16 13:19:37
阅读次数:
91
我在中关村图书大厦见到了一本算法书《啊哈!算法》(Aha!Algorithms)实在简单易懂,看了之后简直无地自容,建议大家买来看看,据说还有《啊哈!算法2——伟大思维闪耀时》。讲了,排序(没有哈希很遗憾)、Dijkstra(迪杰斯塔拉)、Bellman-Ford、栈、队列、链表、数据结构体、并查....
分类:
其他好文 时间:
2015-07-11 20:12:04
阅读次数:
246
STL提供了一些模板类,实现了《数据结构》中的一些数据结构类型
在写代码时用到栈,队列等数据结构时可以充分利用STL模板类,会发现特别好用。
想起C语言中用数组实现栈和队列,简直就是噩梦。
C++是世界上最好的语言。。。(just kidding !!!)
顺序容器:动态数组vector;deque链表list;
关联容器:set/multiset有序值;map/multimap...
分类:
编程语言 时间:
2015-07-08 09:39:06
阅读次数:
134
1、队列Queue 在java5中新增加了java.util.Queue接口,用以支持队列的常见操作。该接口扩展了java.util.Collection接口。Queue使用时要尽量避免Collection的add()和remove()方法,而是要使用offer()来加入元素,使用poll()来获....
分类:
其他好文 时间:
2015-06-27 16:09:19
阅读次数:
116
1、用链表实现栈
package stack;
/**
*
* @author denghb
*
*/
class Link {
public long dData;
public Link next;
public Link(long dd) {
dData = dd;
}
public void displayLink() {
System.out.print(d...
分类:
编程语言 时间:
2015-06-24 09:23:01
阅读次数:
138
背包:它是一种不支持从中删除元素的集合数据类型,目标就是帮助收集全部的元素,并且迭代遍历所有收集到的元素。迭代的顺序不确定,并且与用例无关。主要的API: Bag() 创建一个空的背包void add(Item item) 添加一个元素boolean ...
分类:
系统相关 时间:
2015-06-22 16:16:04
阅读次数:
239
1. 问题描述 用队列来模拟栈的操作。实现如下栈操作:
push(x) 将元素x入栈。
pop() 出栈。
top() 获取栈顶元素。
empty() 判断是否为空。
注意:只能用队列的标准操作,队头取元素,队尾插入元素,获取队列的大小,以及队列是否为空。2 方法和思路 可以用两个队列q1和q2来实现栈的操作,设q2为辅助队列。
入栈时将元素都存入q1队列中。
出栈时将q1中...
分类:
其他好文 时间:
2015-06-20 12:00:50
阅读次数:
123