`

括号匹配、进制转换和堆栈

阅读更多

Stack接口:

package stack;

public interface Stack {
	//返回堆栈的大小
	public int getSize();
	//判断堆栈是否为空
	public boolean isEmpty();
	//数据元素e入栈
	public void push(Object e);
	//栈顶元素出栈
	public Object pop()throws StackEmptyException;
	//取栈顶元素看看
	public Object peek()throws StackEmptyException;
}

定义栈异常:

package stack;

public class StackEmptyException extends Exception{
	
	public StackEmptyException(String exception)
	{
		super(exception);
		
	}

}




节点:

package stack;

public class SLNode {
	public SLNode next;
	public Object e;
	
	public SLNode(SLNode next,Object e)
	{
		this.next=next;
		this.e=e;
	}

}

栈实现(链表)

package stack;

public class StackSLinked implements Stack{
	private SLNode top;
	private int size;//标记栈的大小
	
	public StackSLinked()
	{
		top=null;size=0;
	}

	@Override
	public int getSize() {
		
		return size;
	}

	@Override
	public boolean isEmpty() {
		// TODO Auto-generated method stub
		return size==0;
	}

	@Override
	public void push(Object e) {
		SLNode q=new SLNode(top,e);
		top=q;
		size++;
		
	}

	@Override
	public Object pop() throws StackEmptyException {
		if(size<1)
			throw new StackEmptyException("栈为空");
		Object obj=top.e;
		top=top.next;
		size--;
		return obj;
	}

	@Override
	public Object peek() throws StackEmptyException {
		if(size<1)
		{
			throw new StackEmptyException("栈为空");
			
		}
		
		return top.e;
	}

}

Client 包含 括号匹配算法和


分享到:
评论

相关推荐

    数据结构-栈进制转换和括号匹配

    使用栈进行进制转换和括号匹配 使用栈进行进制转换和括号匹配

    实验二 堆栈和队列基本操作的编程实现

    【实验目的】 堆栈和队列基本操作的编程实现 要求: 堆栈和队列基本操作的编程实现(2学时,验证型),掌握堆栈和队列...利用基本功能实现各类应用,如括号匹配、回文判断、事物排队模拟、数据逆序生成、多进制转换等。

    200个经典C程序【源码】

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    C语言经典源代码实例 数据结构 操作系统 图形等

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    C语言源代码实例.rar

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    经典的C程序220案列

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    关于C的精粹包含至少200个C语言小程序

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    C语言220例从易到难源代码

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    C语言学习实例220例

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七部分 游戏篇 ...

    C语言程序源代码(大集合).rar

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    200个经典C程序源码小游戏

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 ...

    C语言常用算法

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    C语言实例解析精粹

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    C 语言实例解析精粹(第二版)(书+盘)

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    220个C源代码 初学C语言必备

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    C语言实例解析精粹(第二版) 光盘代码

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七部分 游戏篇 ...

    C语言精粹(第2版)随书关盘

    195 括号匹配 196 字符串逆置 197 SIX/NINE问题 198 单词个数统计 199 方差运算 200 级数运算 201 输出素数 202 素数题 203 序列排序 204 整数各位数字排序 205 字符串字母移位 206 Fibonacc数列 第七...

    MySQL 5.1参考手册

    12.1.2. 圆括号 12.1.3. 比较函数和操作符 12.1.4. 逻辑操作符 12.2. 控制流程函数 12.3. 字符串函数 12.3.1. 字符串比较函数 12.4. 数值函数 12.4.1. 算术操作符 12.4.2. 数学函数 12.5. 日期和时间函数 12.6. ...

Global site tag (gtag.js) - Google Analytics