Javaのデータ構造(1)----スタックとキュー


もうすぐ仕事を探します.データ構造は筆記試験の必須問題のようですから、復習しなければなりません.
まずスタック--先に入ってから出ます
package com.wz.util;

public class Stack<T> {
	private int MAX;
	private int top;
	private T []stack;
	Stack (int max){
		MAX = max;
		stack = (T[])new Object [MAX];
		top = -1;
	}
	//  
	public int push(T t){
		int value = -1;
		if(top >= MAX-1){
			System.out.println("stack is full!");
			value =  0;    //      
			}
		else{
			top++;
			stack[top] = t;
			value = 1;
		}
		return value;
	}
	//  
	public T pop(){
		if(top<0){
			System.out.println("stack is empty!");
		return null;     //  
		}
		else{
			top --;
			return stack[top+1];  //     
		}
	}
}

 
キュー--先頭に移動
package com.wz.util;

public class Queue<T> {
	private int front;  //  
	private int rear;   //  
	private int MAX;
	private T [] queue;
	
	Queue(int max){
		MAX = max;
		queue = (T [])new Object[MAX];
		rear = -1;
		front = 0;
	}
	//  
	public int enQueue(T t){
		int value = -1;
		if(rear >=MAX-1){
			System.out.println("Queue is full!");
			value = 0;
			}
		else{
			rear ++;
			queue[rear] = t;
			value = 1;
		}
		return value;
	}
	//  
	public T deQueue(){
		if(front>rear){
			System.out.println("Queue is empty!");
			return null;
		}
		else{
			front++;
			return queue[front-1];
		}
	}
}