java实现栈(数组方式)
来源:互联网 发布:javascript弹出输入框 编辑:程序博客网 时间:2024/06/05 11:08
StackArray类
import java.util.Arrays;public class StackArray<T> {T[] ars;private int default_capacity=10;//元素个数private int size=0;private int top=-1;@SuppressWarnings("unchecked")public StackArray(){ars=(T[])new Object[default_capacity];}@SuppressWarnings("unchecked")public StackArray(int capacity){ars=(T[])new Object[capacity];} public void push(T data) { if (size==ars.length) { //扩容20% @SuppressWarnings("unchecked")T[] newars=(T[])new Object[(int)(ars.length*1.2)]; System.arraycopy(ars, 0, newars, 0, ars.length); Arrays.fill(ars, null); ars=newars; push(data); } else { ars[++top]=data; size++; } } public T Pop() { if (top==-1) { return null; } else { T topdata=ars[top]; ars[top--]=null; size--; return topdata; } } public int getSize() { return this.size; } public T getTopData() { return ars[top]; } public int getTopIndex() { return this.top; }}
测试类
public class StackArrayTest { public static void main(String[] ars) { StackArray<Integer> sa=new StackArray<Integer>(5); sa.push(1); sa.push(2); sa.push(3); sa.push(4); sa.push(5); sa.push(6); while (sa.getTopIndex()>=0) { System.out.println(sa.Pop()); } }}
- java实现栈(数组方式)
- Java的栈实现(数组、链表两种方式)
- java实现队列(数组方式)
- Java实现栈二:通过数组方式实现
- java实现栈(数组和链表两种实现方式)
- Java实现队列二:通过数组方式实现
- Java 螺旋数组的实现方式-一个循环实现哦
- java数组实现栈
- java数组实现栈
- java 数组实现栈
- Java数组实现栈
- 栈的实现(数组方式)
- 使用动态数组的方式实现栈
- 基于数组和链表两种方式实现栈
- 用数组和链表两种方式实现栈
- FIFO实现:数组方式
- java三种方式实现字符串反转(StringBuilder类,数组和栈)
- 最大子数组问题(三种方式,java实现)
- C++ extern
- 笔试题集锦(1)
- C/C++ 获取当前所有逻辑驱动器的根驱动器路径
- 根据时间转动的圆形progressbar
- NuGet的组成
- java实现栈(数组方式)
- 日照的软件公司
- Copy List with Random Pointer
- Flex 4里的fx、mx以及s命名空间
- Web服务器性能/压力测试工具http_load、webbench、ab、Siege使用教程
- jquery()函数的三种语法
- ORA-22868: 具有 LOB 的表包含有位于不同表空间的段
- android 通话记录的增删改查
- hdu 4515