亲宝软件园·资讯

展开

Java实现堆栈 Java实现简单堆栈代码

FrankYou 人气:0
想了解Java实现简单堆栈代码的相关内容吗,FrankYou在本文为您仔细讲解Java实现堆栈的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点: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];
  }
}

加载全部内容

相关教程
猜你喜欢
用户评论