你的位置:首页 > Java教程

[Java教程][javaSE] 数据结构(栈)


栈(stack)是一种线性存储结构,有以下特点:

1.栈中数据是按照先进后出的方式进出栈的

2.向栈中添加删除元素时,只能从栈顶进行操作

 

使用数组实现栈

定义一个类ArrayStack

实现入栈方法push()

实现出栈方法pop()

实现返回栈顶元素方法peek()

public class ArrayStack {  private int[] mArray;  private int mCount;  public ArrayStack(int num) {    mArray=new int[num];    mCount=0;  }  /**   * 入栈   * @param item   */  public void push(int item){    mArray[mCount]=item;    mCount++;  }  /**   * 出栈   * @return   */  public int pop(){    int top=mArray[mCount-1];    mCount--;    return top;  }  /**   * 返回栈顶元素   * @return   */  public int peek(){    return mArray[mCount-1];  }  /**   * 打印   */  public void print(){    for(int i=0;i<=mCount-1;i++){      System.out.print(mArray[i]+",");    }  }  /**   * @param args   */  public static void main(String[] args) {    ArrayStack stack=new ArrayStack(3);    stack.push(5);    stack.push(6);    stack.push(7);    //stack.print();//输出 5,6,7,    stack.pop();    //stack.print();//输出 5,6,    stack.push(8);    stack.print();//输出 5,6,8,  }}