欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java 栈及其实现

程序员文章站 2024-02-07 08:22:16
...

栈与栈的实现

栈-后入先出的数据结构

栈-示意图

java 栈及其实现

在 LIFO 数据结构中,将首先处理添加到队列中的最新元素。

与队列不同,栈是一个 LIFO 数据结构。通常,插入操作在栈中被称作入栈 push 。与队列类似,总是在堆栈的末尾添加一个新元素。但是,删除操作,退栈 pop ,将始终删除队列中相对于它的最后一个元素。

栈-实现自己的栈

代码:

class MyStack {
	    private List<Integer> data;               // store elements
	    public MyStack() {
	        data = new ArrayList<>();
	    }
	    /** Insert an element into the stack. */
	    public void push(int x) {
	        data.add(x);
	    }
	    /** Checks whether the queue is empty or not. */
	    public boolean isEmpty() {
	        return data.isEmpty();
	    }
	    /** Get the top item from the queue. */
	    public int top() {
	        return data.get(data.size() - 1);
	    }
	    /** Delete an element from the queue. Return true if the operation is successful. */
	    public boolean pop() {
	        if (isEmpty()) {
	            return false;
	        }
	        data.remove(data.size() - 1);
	        return true;
	    }