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 条评论