重拾数据结构:栈、队列、链表、堆(2)

时间:2021-11-04 10:34:31

简单的栈:

package com.data.silence;


import java.util.ArrayList;
import java.util.List;


import javax.swing.text.AbstractDocument.Content;


/**
 * 分别用linkedList和arrayList实现一个栈
 * 出栈,压栈,存储数据
 * @author silence
 *
 */
public class MyStack<E> {
private List<E> container;
private int length;  //栈的长度
public MyStack( int length){
this.length = length;
container = new ArrayList<E>();
}
public void push(E element){
container.add(element);
}
public E pop(){
if(container.size()==0){
return null;
}
E e = container.get(container.size()-1);
container.remove(container.size()-1);
return e;
}
public int size(){
return container.size();
}
public int getLength(){
return length;
}
public static void main(String[] args){
MyStack stack = new MyStack<String>(10);
for(int i=0;i<10;i++){
stack.push(i+",");
}
for(int i=0;i<10;i++){
System.out.print(stack.pop());
}
System.out.println("size="+stack.size()+""+"length="+stack.getLength());

}
}