易截截图软件、单文件、免安装、纯绿色、仅160KB

用JAVA实现堆栈(数组篇)

什么是堆栈,关于这个名词,我在百度,google搜索了半天,也没有发现一个比较权威的解释,还有许多资料语焉不详,就以维基百科的解释为准吧,和我记忆中的一致。
堆栈(英文:stack),中国大陆作堆栈,台湾作堆叠,在计算机科學中,是一種特殊的串列形式的資料結構,它的特殊之處在於只能允許在鏈結串列或陣列的一端(稱為堆疊頂端指標,英文為top)進行加入資料(push)和輸出資料(pop)的運算。另外堆疊也可以用一維陣列或連結串列的形式來完成。堆疊的另外一個相對的操作方式稱為佇列。
由於堆疊資料結構只允許在一端進行操作,因而按照後進先出(LIFO, Last In First Out)的原理運作。
堆疊資料結構使用兩種基本操作:推入(push)和彈出(pop):
推入(push) :將數據放入堆疊的頂端(陣列形式或串列形式),堆疊頂端top指標加一。
彈出(pop)  :將頂端數據資料輸出(回傳),堆疊頂端資料減一。
下面是用java数组实现堆栈
/**
* 使用数组实现堆栈,包括入栈、出栈、获取堆栈长度、
* @author Adair
*/
public class Stack {

Object[] data;

int maxSize;
//栈顶位置
int top;

public Stack(int maxSize) {
this.maxSize = maxSize;
data = new Object[maxSize];
top = -1;
}

/**
* 获取堆栈长度
* @return 堆栈长度
*/
public int getSize()
{
return maxSize;
}

/**
* 返回栈中元素的个数
* @return 栈中元素的个数
*/
public int getElementCount()
{
return top;
}

/**
* 判断栈空
* @return 栈空
*/
public boolean isEmpty()
{
return top == -1;
}

/**
* 判断栈满
* @return 栈满
*/
public boolean isFull()
{
return top+1


相关文档:

Java中堆和栈的区别

     栈与堆都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。
     Java的堆是一个运行时数据区,类的对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。
......

JAVA 调用Web Service的方法

1.使用HttpClient
用到的jar文件:commons-httpclient-3.1.jar
方法:
预先定义好Soap请求数据,可以借助于XMLSpy Professional软件来做这一步生成。
String soapRequestData = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
"<soap12:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instanc ......

Java从控制台中读取数据完全攻略

0 引言
   
从控制台中读取数据是一个比较常用的功能,在 JDK 5.0 以前的版本中的实现是比较复杂的,需要手工处理系统的输入流。有意思的是,从 JDK 5.0 版本开始,能从控制台中输入数据的方法每增加一个版本号,就有一种新增的方法,这也增加了选择的种类,可以依据不同的要求来进行选择。下面来看一下 ......

验证日期的Java正则表达式

看火龙果写了一个验证日期的Java正则表达式,就给转了过来
由于使用到了反向预搜索模式“(?<=)”和“(?<!)”,所以这个只能在 Java 中使用,不能在 JavaScript 中使用,JavaScript 不支持反向预搜索。支持 yyyy-MM-dd、yyy-MM-dd、yy-MM-dd 和 y-MM-dd,即年份为 1~4 ......

保护你的JAVA / .net 程序,终极避免被反编译方法研究

保护你的JAVA / .net 程序,终极避免被反编译方法研究
反编译真的让JAVA / .net 制作者讨厌的东西。你花大量的精力做了一个很好的软件,却有人盗用,
盗用都算了
人家还用来商业...
就像某文说的.你的软件买 XXXXXXXX大元.人家公司买200元.....
怎么做到呢?就是通过反编译。
我们可以看到
就算保护很强的reflector4/ ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号