当前位置:主页 > 软件编程 > JAVA代码 >

Java实现简单堆栈代码

时间:2020-10-31 19:25:11 | 栏目:JAVA代码 | 点击:

本文实例为大家分享了Java实现简单堆栈的具体代码,供大家参考,具体内容如下

/**
 * Created by Frank
 */
public class ToyStack {
  /**
   * 栈的最大深度
   **/
  protected int MAX_DEPTH = 10;

  /**
   * 栈的当前深度
   */
  protected int depth = 0;

  /**
   * 实际的栈
   */
  protected int[] stack = new int[MAX_DEPTH];

  /**
   * push,向栈中添加一个元素
   *
   * @param n 待添加的整数
   */
  protected void push(int n) {
    if (depth == MAX_DEPTH - 1) {
      throw new RuntimeException("栈已满,无法再添加元素。");
    }
    stack[depth++] = n;
  }

  /**
   * pop,返回栈顶元素并从栈中删除
   *
   * @return 栈顶元素
   */
  protected int pop() {
    if (depth == 0) {
      throw new RuntimeException("栈中元素已经被取完,无法再取。");
    }

    // --depth,dept先减去1再赋值给变量dept,这样整个栈的深度就减1了(相当于从栈中删除)。
    return stack[--depth];
  }

  /**
   * peek,返回栈顶元素但不从栈中删除
   *
   * @return
   */
  protected int peek() {
    if (depth == 0) {
      throw new RuntimeException("栈中元素已经被取完,无法再取。");
    }
    return stack[depth - 1];
  }
}

您可能感兴趣的文章:

相关文章