java實現棧

目錄

 

什麼是棧

java數組實現棧


什麼是棧

棧是一種線性結構,後進者先出,先進者後出,這就是典型的“棧”結構。只能在棧頂操作元素,

棧主要包含兩個操作,入棧和出棧,也就是在棧頂插入一個數據和從棧頂刪除一個數據。對於找的實現,可以通過數組實現也可以通過鏈表實現

java數組實現棧

package com.javayihao.array;

/**
 * 使用數組實現順序棧
 * 
 * @author javayihao
 *
 */
public class MyStack{
	//數組實現
	private String data[];
	//棧容量
	private int capacity;
	//元素個數
	private int size;
	//初始化方法
	public MyStack(int n){
		this.data = new String[n];
		this.capacity=n;
		this.size=0;
	}
	/**
	 *入棧操作
	 */
	public void push(String s) {
		if(size>capacity){
			throw new RuntimeException("容量超出");
		}
		data[size]=s;
		++size;
	}
	/**
	 * 出棧操作
	 */
	public void pop(){
		if (size==0) {
			throw new RuntimeException("空棧");
		}
		--size;
	}
	/**
	 * 查看所有棧元素
	 */
	public  void  print() {
		for(int i=0;i<size;i++){
			System.out.println(data[i]);
		}
			
	}
	public static void main(String[] args) {
		MyStack stack = new MyStack(3);
		stack.push("a");
		stack.push("bbb");
		stack.push("cc");
		stack.pop();
		stack.print();
	}
	
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章