栈-初识

栈和队列

栈和队列是比数组更加抽象的结构,本人理解是为了特殊场景下建立秩序的一个工具,表示抽象的一个过程,数组更像一个结果。

栈 先进后出

栈空间(存放元素位置),栈顶元素(指向栈顶的指针),栈的长度

创建一个空栈

initStack(); // 初始化栈

入栈

push(Element); 

出栈

pop();

查看元素

peek();
Java代码实现
// stack
public class NewStack {

  private Long[] elements; // 元素

  private int maxSize; // 栈大小

  private int top; // 栈顶指针

  public NewStack(int size) {
    this.elements = new Long[size];
    this.maxSize = size;
    this.top = -1;
  }

  public void push(Long e) {
    elements[++top] = e;
  }

  public long pop() {
    return elements[top--];
  }

  public long peek() {
    return elements[top];
  }

  public boolean isEmpty() {
    return top == -1;
  }

  public boolean isFull() {
    return top == maxSize - 1;
  }
}

猜你喜欢

转载自www.cnblogs.com/MagicalFool/p/10146926.html