文档章节

链式堆栈的实现

藍色的海
 藍色的海
发布于 2012/04/06 09:47
字数 201
阅读 60
收藏 0

结点类

 

public class Node{
	
	Object element;  //数据元素
	Node next;       //表示下一下结点的对象引用
	
	Node(Object obj,Node nextval){   //用于其他结点的构造函数
		element = obj;
		next = nextval;
	}
	
	Node(Node nextval){       //用于头结点的构造函数
		next = nextval;
	}
	
	public Node getNext(){
		return next;
	}
	
	public void setNext(Node nextval){
		next = nextval;
	}
	
	public Object getElement(){
		return element;
	}
	
	public void setElement(Object obj){
		element = obj;
	}
	public String toString(){
		return element.toString();
	}
}

链式堆栈类

 

public class LinStack{
	
	Node head;     //堆栈头
	int size;      //结点个数
	
	public void LinStack(){    //构造函数
		head = null;
		size = 0;
	}
	
	public void push(Object obj){    //入栈
		head = new Node(obj, head);  //新结点作为新栈顶
		size ++;
	}
	
	public Object pop() throws Exception{     //出栈
		if(size == 0){
			throw new Exception("堆栈已空!");
		}
		Object obj = head.element;          //原栈顶数据元素
		head = head.next;                   //原栈顶结点脱链
		size --;
		return obj;
	}
	
	public boolean notEmpty(){            //非空否
		return head != null;
	}
	
	public Object getTop(){
		return head.element;
	}
}

 

 

 

© 著作权归作者所有

藍色的海
粉丝 3
博文 19
码字总数 7205
作品 0
广州
其他
私信 提问
Struts2 拦截器 Interceptor结构

Interceptor结构 让我们再来回顾一下之前我们曾经用过的一张Action LifeCycle(生命周期)的图: 图中,我们可以发现,Struts2的Interceptor一层一层,把Action包裹在最里面。这样的结构,大概...

拷贝忍者卡卡习
2016/11/02
3
0
数据结构

算法,解决问题之道,各行各业,各门各类均有其固有的难题,而解决问题之道大不相同,社会学,历史学,计算机学,金融学,国学,天文学问题虽不同,但其思维方式却是相通的。 古有筹策论,今...

HappyBoyLi
2016/03/04
0
0
使用shelljs提升你的开发效率(一)

Shelljs - ShellJS is a portable (Windows/Linux/OS X) implementation of Unix shell commands on top of the Node.js API Shelljs是Node.js下的脚本语言解析器,具有丰富且强大的底层操作......

人生缺张草稿🌾
05/20
0
0
SploitFun Linux x86 Exploit 开发系列教程

原文:Linux (x86) Exploit Development Series 在线阅读 PDF格式 EPUB格式 MOBI格式 Github 译者

wizardforcel0
2018/07/02
0
0
jQuery(二)jQuery链式语法在遍历中的使用

jQuery链式语法在遍历中的使用 jQuery的代码是非常优雅的,也是非常灵巧的。它允许用户连续设计各种行为,从而实现按人的惯性思维进行快速开发。 举例代码如下: 实现链式语法遍历可以用的函...

年少爱追梦
2016/06/05
130
0

没有更多内容

加载失败,请刷新页面

加载更多

抽象同步队列AQS——AbstractQueuedSynchronizer锁详解

AQS——锁的底层支持 谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)! 类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资...

须臾之余
今天
2
0
springboot配置百度UEditor 富文本详解

富文本简介 UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于MIT协议,允许自由使用和修改代码... 准备工作 ueditor需要单独文...

wotrd
昨天
3
0
mysql 5.7之my.cnf配置大全

[client]port = 3306socket = /tmp/mysql.sock[mysqld]###############################基础设置######################################Mysql服务的唯一编号 每个mysql服务...

Online_Reus
昨天
2
0
MAVEN打包时引入外部链接的包

1.项目引入了ORACLE的jar包,MAVEN配置如下 2.打jar包的时候需要指定下main入口函数mainClass <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> ......

Cobbage
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部