码迷,mamicode.com
首页 >  
搜索关键字:进栈    ( 432个结果
栈和队列的应用
1.栈常见应用 1.1 括号匹配 问题描述:假设表达有两种符号:圆的和方的,嵌套的顺序任意,判断嵌套是否正确,如 ([]()) 或 [[()]]均为正确,而 [(]) 或 (()] 均为不正确。 算法描述: (1)初始化一个空栈,顺序读入括号; (2)若是左括号直接进栈; (3)若是右括号,先出栈一 ...
分类:其他好文   时间:2016-05-19 23:00:04    阅读次数:346
运用栈把算术表达式+,-,*,/,%(中缀表达式)转换成后缀表达式并且计算出值
原理: 1.首先判断是数值还是符号,如果是数值放进字符数组以#表示结束, 2.如果是符号,放进栈, 3.每个符号之间要比较优先级,如果栈顶符号优先级低,符号进栈,如果相等(即“(” “)”)出栈,栈顶符号优先级高,栈顶元素出栈进入字符数组,得到后缀表达式 4.计算后缀表达式,判断是数字还是符号。直到 ...
分类:其他好文   时间:2016-05-15 02:20:33    阅读次数:182
栈和队列
一、栈 1.栈的定义 栈是一种线性表,一种抽象数据类型,它只允许在一端进行插入或删除操作。又叫做LIFO(后进先出)线性表。 栈的基本操作有入栈push和出栈pop,栈顶top指的是进行操作的一端。如图,只有栈顶元素可以访问。进栈次序为a1、a2、a3、a4、a5,出栈次序为a5、a4、a3、a2、 ...
分类:其他好文   时间:2016-05-14 10:20:19    阅读次数:175
链栈的基本操作
链栈的基本操作实现代码如下:#include<iostream>usingnamespacestd;#defineTRUE1#defineFALSE0//链栈的结构typedefstructnode{ intdata; structnode*next;}LinkStackNode;typedefLinkStackNode*LinkStack;//链栈进栈intPush(LinkStacktop,intx)//将数据元素x压入栈top中..
分类:其他好文   时间:2016-05-13 15:42:16    阅读次数:342
多栈运算
多栈运算的算法思想:将多个链栈的栈顶指针放在一个一维指针数组中来统一管理,从而实现同时管理和使用多个栈。多链栈示意图实现代码如下:#include<iostream>usingnamespacestd;#defineTRUE1#defineFALSE0#defineM10typedefstructnode{ intdata; structnode*next;}LinkS..
分类:其他好文   时间:2016-05-13 15:41:12    阅读次数:182
数据结构--书上代码用栈求解迷宫问题存在BUG(非最优解)
数据结构第四版p79页迷宫问题我觉得存在BUG,下图盗用贺老师就会的QAQ,也希望贺老师能看到帮忙解答一下啦。 BUG:  程序从起始点(1,1)开始寻找路径,在当前点进行判断其上下左右是否存在可走点,如果从(1,1)点开始判断如图那么它的右(1,2)下(2,1)都是可走点那么将右边的格子坐标进栈呢还是将下边的格子坐标进栈?书本上给的代码是先判断上边格子再判断右边格子再判断下边格子再判断左边格子...
分类:其他好文   时间:2016-05-12 21:56:16    阅读次数:351
顺序栈的基本操作:初始化、进栈、出栈、读栈顶元素
顺序栈:利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素,同时由于栈操作的特殊性,还必须附设一个位置指针top(栈顶指针)来动态地指示栈顶元素在顺序栈中的位置。通常以top=-1表示空栈。代码如下:#include<iostream>usingnamespacestd;#defineTRUE1#defin..
分类:其他好文   时间:2016-05-09 07:18:44    阅读次数:148
多栈共享技术,双端栈的初始化、进栈、出栈操作
栈的应用非常广泛,经常会出现一个程序中需要同时使用多个栈的情况。若使用顺序栈,会因为对栈空间大小难以准确估计,从而产生有的栈溢出、有的栈空间还很空闲的情况。为了解决这个问题,可以让多个栈共享一个足够大的数组空间,通过利用栈的动态特性来使其存储空间互相补充,..
分类:其他好文   时间:2016-05-09 07:18:08    阅读次数:250
第14课 计算器核心解析算法(下)
1. 中缀到后缀的手工转换 (1)按优先级给表达式加括号 (2)从内向外将运算符移动对应的括号后面 (3)去括号,即可得到后缀表达式(如下图,图中数字表示转换顺序) 2. 后缀表达式求值 2.1 图解后缀表达式求值过程 (1)从左向右扫描后缀表达式。 (2)遇到数字直接进栈 (3)重点在于遇到运算符 ...
分类:编程语言   时间:2016-04-29 23:32:04    阅读次数:365
数据结构之栈和队列
栈和队列是特殊的线性表。 栈:只允许数据在一个端进行增加和删除操作,存在先进先出的原则。 插入元素为进栈,从栈顶删除元素为出栈。栈最底部元素为栈顶元素,栈顶部元素为栈顶元素。 栈只允许在栈顶进行增加和删除元素的操作。 先入栈的元素位于栈底,后入位于栈顶。 可以采用数组的形式来实现栈。栈是受限制的线性 ...
分类:其他好文   时间:2016-04-25 00:56:44    阅读次数:145
432条   上一页 1 ... 26 27 28 29 30 ... 44 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!