美文网首页
栈(java实现)

栈(java实现)

作者: Vekaco | 来源:发表于2021-02-27 15:52 被阅读0次

栈是特殊的线性表,只能从表尾进行插入和删除,称为入栈和出栈。


image.png
package org.example.ch3;

/**
 * stack
 * @param <T> element type
 */
public class Stack<T> {
    // capability of stack
    private static int MAX_SIZE = 20;
    private int size;
    private T[] elements;

    /**
     * initiate empty stack.
     */
    public Stack() {
        size = 0;
        elements = (T[]) new Object[MAX_SIZE];
    }

    /**
     * push data into stack
     * @param data data
     * @return <code>true</code> if push success
     */
    public boolean push(T data) {
        //outage of stack
        if (size > MAX_SIZE) {
            return false;
        }

        elements[size++] = data;
        return true;
    }

    /**
     * pop data from stack.
     * @return data from top of stack
     */
    public T pop() {
        if (size == 0) {
            return null;
        }
        return elements[--size];
    }

    /**
     * read top of stack.
     * @return data of the stack
     */
    public T getTop() {
        if (size > 0) {
            return elements[size - 1];
        }
        return null;
    }
    
    public boolean isEmpty() {
        return size == 0;
    }

    public void clear() {
        size = 0;
    }

    public int getSize() {
        return size;
    }
}

相关文章

  • Java示例教程

    Java 实现栈stackJava 实现栈stack2Java 向量Vector 反转Java 向量Vector ...

  • 基于动态数组的实现 Java实现 基于链表的栈的实现 Java实现

  • Java数据结构和算法系列———栈

    目录 1、栈的基本概念2、Java模拟简单的顺序栈实现3、增强功能版栈4、利用栈实现字符串逆序5、利用栈判断分隔符...

  • java实现栈

    栈特点:后进先出 类似于堆盘子。第一个放下的盘子一定是在底部( 在栈中的就叫push(压入)),最后一个盘子在顶部...

  • Java实现栈

    数组栈:压栈、出栈、返回栈顶元素 链式栈:压栈、出栈、返回栈顶元素

  • Java实现栈

    在上篇文章中,我们了解了单向链表。在这篇文章中,我们了解下另一种数据结构,栈。通过单向链表我们可以实现栈 栈 栈是...

  • 栈(java实现)

    栈是特殊的线性表,只能从表尾进行插入和删除,称为入栈和出栈。

  • Android面试题总结(题目+复习链接)

    数据结构 1.栈实现原理 java数据结构与算法之栈(Stack)设计与实现 - CSDN博客 2.链表实现原理 ...

  • 数据结构--栈

    栈栈---后进先出 在Java里有一个Vector的子类Stack()实现了栈。 Stack()方法 boolea...

  • 用两个栈实现队列,用两个队列实现堆栈

    参考:剑指Offer面试题7(Java版):用两个栈实现队列与用两个队列实现栈 用两个栈实现队列stack1作为入...

网友评论

      本文标题:栈(java实现)

      本文链接:https://www.haomeiwen.com/subject/ygkifltx.html