數據結構複習(3)---棧

上一章 : 數據結構複習(2)—線性查找,二分查找

package cjy.datastructure;

/**
 * 順序棧 Title: Stack.java 數據類型不確定可改爲類模版<T>
 * 
 * @author CJY》10258
 * @date 2019年7月9日
 */
public class Stack {
	/**
	 * 空數組
	 */
	private int[] elements;

	public Stack() {
		elements = new int[0];
	}

	/**
	 * 入棧
	 * 
	 * @param e
	 */
	public void push(int e) {
		int[] array = new int[elements.length + 1];
		for (int i = 0; i < elements.length; i++) {
			array[i] = elements[i];
		}
		array[elements.length] = e;
		elements = array;
	}

	/**
	 * 出棧
	 */
	public void pop() {
		int[] array = new int[elements.length - 1];
		for (int i = 0; i < array.length; i++) {
			array[i] = elements[i];
		}
		elements = array;
	}

	/**
	 * 查看棧頂元素
	 * 
	 * @return
	 */
	public int peek() {
		return elements[elements.length - 1];
	}

	/**
	 * 判空操作
	 * 
	 * @return
	 */
	public boolean isEmpty() {
		return elements.length == 0;
	}
}

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