码迷,mamicode.com
首页 >  
搜索关键字:进栈    ( 432个结果
331. Verify Preorder Serialization of a Binary Tree ~~~~~
方法一: 我自己的方法,建一个stack,每遇到数字就推进栈里,每遇到#,就弹出一个数字,最后栈里必须剩一个#。 时间复杂度是O(n) 2. 别人的方法 每一个数字可以有两条发出的边,每个#会占用一条边,每一个数字自己本身会占用一个边,但是又会产生两个边,所以维持一个计数,一旦小于0就返回false ...
分类:其他好文   时间:2016-07-07 13:10:40    阅读次数:144
331. Verify Preorder Serialization of a Binary Tree
方法一: 我自己的方法,建一个stack,每遇到数字就推进栈里,每遇到#,就弹出一个数字,最后栈里必须剩一个#。 时间复杂度是O(n) 2. 别人的方法 每一个数字可以有两条发出的边,每个#会占用一条边,每一个数字自己本身会占用一个边,但是又会产生两个边,所以维持一个计数,一旦小于0就返回false ...
分类:其他好文   时间:2016-07-07 12:46:48    阅读次数:97
POJ 3321:Apple Tree(dfs序+树状数组)
题目大意:对树进行m次操作,有两类操作,一种是改变一个点的权值(将0变为1,1变为0),另一种为查询以x为根节点的子树点权值之和,开始时所有点权值为1。 分析: 对树进行dfs,将树变为序列,记录每个点进栈出栈的时间戳作为其对应区间的左右端点,那么其子节点对应区间必在该区间内,对这段区间求和即可,用 ...
分类:移动开发   时间:2016-07-05 22:07:50    阅读次数:212
重学数据结构笔记(2)
4.栈和队列栈(stack),是仅限定在表尾进行插入和删除操作的线性表 (一种特殊的线性表,有前驱后继关系)我们把允许插入和删除的一端称为栈顶,另一端称为栈底,不含任何元素的称为空栈,栈又称为先进后出的线性表简称LIFO结构先进后出,后进先出,最先进栈的元素不一定最后出,因为栈对元素的删除和增加位置 ...
分类:其他好文   时间:2016-07-04 18:33:50    阅读次数:102
栈和队列入门
栈 栈是只能在某一端插入和删除的特殊线性表。 用桶堆积物品,先堆进来的压在底下,随后一件一件往上堆。取走时,只能从上面一件一件取。堆和取都在顶部进行,底部一般是不动的。 栈就是一种类似桶堆积物品的数据结构,进行删除和插入的一端称栈顶,另一端称栈底。插入一般称为进栈(PUSH),删除则称为退栈(POP ...
分类:其他好文   时间:2016-06-25 19:03:03    阅读次数:136
【栈的应用】四则运算表达式求值
1. 后缀表达式计算结果 (1) 规则 从左到右遍历表达式的每个数字和符号,遇到是数字就进栈,遇到是符号,就将处于栈顶的两个数字出栈,运算结果进栈,一直到最终获得结果。 (2) 示例 后缀表达式:9 3 1 - 3 * + 10 2 / + 2. 中缀表达式转后缀表达式 (1) 规则 从左到右遍历中 ...
分类:其他好文   时间:2016-06-15 01:37:01    阅读次数:170
队列的实现(一)顺序队列的实现
队列:只能一端进行出栈一端进行进栈。 队首:只允许进行出栈操作,可以进行删除。 队尾:只允许进行入栈操作,可以进行插入。 队尾进,队尾出,先进先出。 所以队列的实现也有两种形式,一种是数组实现队列,一种是用链表实现队列。 首先是用数组来实现队列。 使用数组队列,因为在删除时front会越来越大,所以 ...
分类:其他好文   时间:2016-06-13 17:08:58    阅读次数:142
栈与队列问题1——出栈序列
问题描述:栈是常用的一种数据结构,有n个元素在栈顶端一侧等待进栈,栈顶端另一侧是出栈序列。你已经知道栈的操作有两种:push和pop,前者是将一个元素进栈,后者是将栈顶元素弹出。现在要使用这两种操作,由一个操作序列可以得到一系列的输出序列。请你编程求出对于给定的n,计算并输出由操作数序列1,2,…, ...
分类:其他好文   时间:2016-06-08 18:54:17    阅读次数:439
数据结构与算法分析(7)表、栈和队列(二)
介绍栈的相关知识: (2)栈ADT: 2.1栈模型: 栈是限制插入和删除只能在一个位置上进行的表,该位置是表的末端,叫做栈的顶(top)。对栈的基本操作有Push(进栈)和Pop(出栈),前者相当于插入,后者则是删除最后插入的元素。 栈有时又叫做LIFO(后进先出表)。一般的栈模型是,存在某个元素位 ...
分类:编程语言   时间:2016-06-03 21:02:09    阅读次数:245
Min Stack
这里面有一个注意的点是,如果现在要push x,且x等于当前存在的最小值(栈中已经有了x)时,也要把x进栈。否则当x出栈时,当前最小值也跟着出栈,但是原栈中最小值元素依然还有,此时最小值却发生了错误。 class MinStack { public: /** initialize your data ...
分类:其他好文   时间:2016-05-23 00:29:25    阅读次数:167
432条   上一页 1 ... 25 26 27 28 29 ... 44 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!