Java-栈:stack
栈(stack)又名堆栈,它是一种运算受限的线性表,后进先出(LIFO)。
其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。
向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;
从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。
---------------------------------------------------------------------------------
基于数组来实现栈结构:
规定: 最后一个位置是栈顶.
索引为0的位置就是栈底.
package com._520it.stack; import com._520it.array.MyArrayList; //栈 public class MyStack extends MyArrayList{ //int size = 0; //入栈操作 public void push(Object ele ){ this.add(ele); //size ++; } //删除栈顶元素 public void pop(){ int index = super.size-1; this.delete(index); } //查询栈顶元素 public Object search(){ int index = super.size-1; return super.getNum(index); } public static void main(String[] args) { MyStack s = new MyStack(); s.init(5); s.push("a"); s.push("b"); s.push("c"); s.push("d"); s.push("e"); s.push("f"); s.print(); s.pop(); s.print(); Object a = s.search(); System.out.println(a); } }
共有 0 条评论